上期的推文VlnPlot遵守及常用参数浅析整理先容了一下小提琴图可视化marker基因淫淫网官网,在收尾通俗先容了一下可用于好意思化可视化遵守的参数。
图片淫淫网官网
这期咱们就悉数来使用一下这些参数,绘制更悦方针小提琴图叭!
分析数据简介因为分析中需要用到分组信息,而pbmc3k的数据集是单个样品,莫得包含分组信息。是以这期的示例数据换为ifnb.SeuratData的数据集
ifnb.SeuratData数据降维聚类分群的本体见推文——ifnb数据集分析及邃密对比
终末的手动分群情况:
图片
得到top3的Marker基因:
markers <- FindAllMarkers(sce.all.int, only.pos = TRUE, min.pct = 0.25, logfc.threshold = 0.25, verbose = FALSE)top3 = markers %>% group_by(cluster) %>% top_n(n = 3, wt = avg_log2FC)g2 = unique(top3$gene)基于VlnPlot参数好意思化小提琴图1. 径直可视化
VlnPlot(sce.all.int, features = g2[1:6])
图片
要是径直使用VlnPlot可视化,不确立参数,会得到每个基因单独展示的遵守,不太易读。
要是念念将marker悉数展示,就需要使用stack参数绘制堆叠小提琴图
2. 堆叠小提琴图#使用paletteer包来调用awtools包中的调色板函数library(paletteer)color <- c(paletteer_d("awtools::bpalette"), paletteer_d("awtools::a_palette"), paletteer_d("awtools::mpalette"))#stack=T绘制堆叠小提琴图p1 <- VlnPlot(sce.all.int,features=g2, group.by="celltype", stack=T,cols=color)#去掉标签邃密p1+NoLegend()
图片
不错使用flip参数进行翻转,使得遵守愈加易读
p1 <- VlnPlot(sce.all.int,features=g2, group.by="celltype", flip=T,stack=T,cols=color)p1+NoLegend()
图片
3. 分组小提琴图分组小提琴图是一种用于展示不同组别中数据散播情况的可视化图表,当有两个组别时不错很好的展示基因在两个组间的各别
使用split.by参数可聘请按照某一分组变量(这里是 'stim')来分割数据
色狼p2 <- VlnPlot(sce.all.int, g2, stack = TRUE, split.by = 'stim',flip=T, add.noise = T, cols = c("#78C2C4","#C73E3A"),) ;p2
图片
从图中不错看到pDC关系基因主要在STIM组高抒发,有些基因仅在STIM粗略只在CTRL组抒发
4. 分组分半小提琴图也不错在并吞个图形中绘制多个分组的散播,不错直不雅地相比不同组之间的数据散播情况,以便进行统计分析和预计。
使用split.plot = T生成每个分组的单独小提琴图
p<-VlnPlot(sce.all.int, features = g2,stack=T, pt.size=0,flip = T,add.noise = T, split.by = 'stim', group.by = "celltype", cols = c("#78C2C4","#C73E3A"), split.plot = T)
图片
将分组以及分组且分半小提琴图拼图,不错愈加直不雅的看到两个分组之间基因抒发的各别
图片
使用ggplot2进行好意思化因为VlnPlot是一个ggplot的对象,是以不错基于ggplot2进行好意思化。粗略索要需要的数据,使用ggplot2径直绘制小提琴图
1. 好意思化VlnPlot遵守不错基于ggplot2的theme函数去更变坐标轴,确立文本神采和大小、添加边框、更变间距等
p1 + theme_bw()+ theme( axis.text.x.bottom = element_text(angle = 45,hjust = 1,vjust = 1), panel.grid.major = element_blank(), panel.grid.minor = element_blank(), legend.position = "none", axis.text.x = element_text(color = 'black',size = 11), axis.text.y = element_blank(), axis.title.x = element_text(color = 'black', size = 15), axis.ticks.x = element_line(color = 'black'), axis.ticks.y = element_blank(), )旋转并对王人 x 轴标签,确立其神志;取消 x 轴的次要网格线与 y 轴的刻度标签;瞒哄图例;确立 x 轴标题和刻度线的神采和大小;透彻取消 y 轴的刻度和网格线,以简化图形展示。
图片
p1+theme_minimal()+ theme(axis.text.x = element_text(angle = 45, hjust = 1), axis.text.y = element_blank(), axis.title = element_text(size = 12), legend.position = 'none')+ scale_fill_manual(values = color)+ labs(title = 'Top 3 markers for each cluster', x = 'Cluster', y = 'Expression')
通过theme_minimal()和theme()函数对图形的神志进行好意思化:
将 x 轴标签旋转 45 度并右对王人;瞒哄 y 轴的刻度标签;设定轴标题的字体大小;移除图例;自界说填充神采;添加标题和轴标签。图片
2. 索要数据使用ggplot2进行好意思化小谢私以为基于ggplot2的theme函数好意思化VlnPlot遵守仍是相忘形瞻念了,但由于是VlnPlot遵守的框架下,可能如故会有些铁心
要是需要高度定制化小提琴的图的遵守,也不错索要需要的数据,使用ggplot2从绘制到好意思化。
之前的前辈们仍是整理好了索要数据进行可视化的规范:
比如生信菜鸟团的Violin plot 好意思化生信星球的大漂亮版块的单细胞小提琴图以及生信补给站的scRNA分析| Seurat堆叠小提琴图不自豪? 那就ggplot2 堆叠 各式元素小结这期使用VlnPlot函数的关系参数,绘制堆叠小提琴图,以及对小提琴图进行了分组分半的展示
基于ggplot2在VlnPlot遵守的基础上进行更变淫淫网官网,要是念念索要需要的数据,使用ggplot2从绘制到好意思化,不错参考前辈们整理的推文!
本站仅提供存储管事,扫数本体均由用户发布,如发现存害或侵权本体,请点击举报。