R绘图笔记 | 多数据系列的箱型图与带抖动散点的多数据系列箱型图
关于绘图,前面介绍了一些:
这里介绍小提琴图会漂亮的云雨图绘制,小提琴图在生信文章中很常见,云雨图我在文章中很少见到,但真的很漂亮,发表文章可以试试。
一.读入数据
如果你想获取该数据用于自己练习,下面是获取数据的地址:
https://docs.qq.com/sheet/DV3lUY3NodG5TdWFz
数据格式是这样的。
数据第A列是病人ID,B列样本信息(Trmor/Normal),其他列是病人的标准化后的基因表达数据。
你可以保存副本导出,然后自己读入。
library(ggplot2)
library(grid)
library(RColorBrewer)
library(tidyr)
data <- read.csv("BioInfoNotesData2.csv",row.names = 1)
取几个基因看看在正常和肿瘤组织中的表达情况。
f3.data <- data[,1:5]
colnames(f3.data) <- c("Sample","geneA","geneB","geneC","geneD")
head(f3.data)
数据整理
f3.data <- gather(f3.data,gene,value,geneA,geneB,geneC,geneD)
head(f3.data)
二.绘图
如果用我提供的数据,你选择的基因列不一样,和我的结果就不一样。
1.多数据系列的箱型图
ggplot(f3.data, aes(x = gene, y = value))+
geom_boxplot(outlier.size = 1, aes(fill=factor(Sample)),
position = position_dodge(0.8),size=0.5) +
guides(fill=guide_legend(title="Sample"))+
theme_minimal()+
theme(axis.title=element_text(size=13,face="plain",color="black"),
axis.text = element_text(size=11,face="plain",color="black"),
panel.background=element_rect(colour="black",fill=NA),
panel.grid.minor=element_blank(),
legend.position="right",
legend.background=element_rect(colour=NA,fill=NA),
axis.ticks=element_line(colour="black"))
2.带抖动散点的多数据系列箱型图
先处理一下数据
f4.data<-transform(f3.data,dist_cat_n=as.numeric(as.factor(gene)),
scat_adj=ifelse(Sample == "Tumor",0.2,-0.2))
head(f4.data)
ggplot(f4.data, aes(x =gene, y = value))+
geom_boxplot(outlier.size = 0, aes(fill=factor(Sample)),
position = position_dodge(0.8),size=0.4) +
geom_jitter(aes(scat_adj+dist_cat_n, value,fill = factor(Sample)),
position=position_jitter(width=0.1,height=0),
alpha=1,
shape=21, size = 0.5)+
guides(fill=guide_legend(title="Sample"))+
theme_minimal()+
theme(axis.title=element_text(size=13,face="plain",color="black"),
axis.text = element_text(size=11,face="plain",color="black"),
panel.background=element_rect(colour="black",fill=NA),
panel.grid.minor=element_blank(),
legend.position="right",
legend.background=element_rect(colour=NA,fill=NA),
axis.ticks=element_line(colour="black"))
参考资料:
R语言数据可视化之美,张杰/著
赞 (0)