之前我们学习了ggplot绘制单变量,两个连续变量的图形,两个离散型变量。对于一个离散型变量,一个连续型变量,有很多作图方式,包括箱图,点图等等
• geom_boxplot() for box plot
• geom_violin() for violin plot
• geom_dotplot() for dot plot
• geom_jitter() for stripchart
• geom_line() for line plot
• geom_bar() for bar plot
今天我们来学习一下饼图的绘制
ggplot2中的coord_polar() 函数可以用来绘制饼图。
构建数据
library(tidyverse)
df <- data.frame(
group = c("Male", "Female", "Child"),
value = c(25, 25, 50))
head(df)
画个基础饼
p <- ggplot(df, aes(x="", y = value, fill=group)) +
geom_bar(width = 1, stat = "identity") +coord_polar("y", start=0)
p
设置颜色
# 设置颜色
p + scale_fill_manual(values=c("#999999", "#E69F00", "#56B4E9"))
自定义饼图
先设定个空背景
blank_theme <- theme_minimal()+
theme(
axis.title.x = element_blank(),
axis.title.y = element_blank(),
axis.text.x=element_blank(),
panel.border = element_blank(),
panel.grid=element_blank(),
axis.ticks = element_blank(),
plot.title=element_text(size=14, face="bold")
)
画百分比的饼图
require(scales)
p + scale_fill_brewer("Blues") + blank_theme +
geom_text(aes(y = value/3 + c(0, cumsum(value)[-length(value)]),
label = percent(value/100)), size=5)
单基因泛癌分析链接
TCGA单基因免疫相关泛癌分析(应要求,对出图添加更细致的描述)mp.weixin.qq.comTCGA数据分析课程:
生物信息学教学m.study.163.com