单细胞小提琴图+箱型图

做单细胞数据分析的时候,我们经常会用小提琴图来展示一些marker在不同细胞亚群中的表达情况。R的Seurat包中就有一个函数叫VlnPlot,专门用来画小提琴图的。

我们来看看这个函数的参数和使用方法

单细胞小提琴图+箱型图_第1张图片
单细胞小提琴图+箱型图_第2张图片

我们用Seurat单细胞绘图函数DimHeatmap中的数据来举个例子。

我们看CD3E这个基因在不同细胞亚群中的表达情况,先用默认参数看看效果

load("scRNA.rds")
library(Seurat)
library(ggplot2)
VlnPlot(scRNA, features = "CD3E")

默认情况下,会同时画出小提琴图和散点图,还有右侧的图注。

单细胞小提琴图+箱型图_第3张图片

如果不想要右侧的图注,可以使用NoLegend()

VlnPlot(scRNA, features = "CD3E")+NoLegend()
单细胞小提琴图+箱型图_第4张图片

如果散点图也不想要,这个时候我们就要去研究一下VlnPlot这个函数的参数了,

pt.size  
Point size for geom_violin

我们发现pt.size是控制点大小的,因此我们可以把点的大小设置成0试试

VlnPlot(scRNA, features = "CD3E",pt.size = 0)+NoLegend()

看样子是work的

单细胞小提琴图+箱型图_第5张图片

可能有些人想同时把箱型图也画出来,这样能看出各个分位数以及中值的情况。其实也很容易,VlnPlot这个函数实际上是基于ggplot写的,所以可以通过geom_boxplot()来添加箱型图

VlnPlot(scRNA, features = "CD3E",pt.size=0)+geom_boxplot()+NoLegend()

效果如下

单细胞小提琴图+箱型图_第6张图片

箱体的宽度和颜色有点奇怪,接下来我们来微调一下

VlnPlot(scRNA, features = "CD3E",pt.size=0)+ 
 #width控制箱体宽度,col控制边框颜色,fill控制填充颜色  
 geom_boxplot(width=.2,col="black",fill="white")+  
 NoLegend()​

大功告成


单细胞小提琴图+箱型图_第7张图片

参考下文获取scRNA.rds文件

单细胞小提琴图+箱型图​

你可能感兴趣的:(单细胞小提琴图+箱型图)