单细胞基因可视化之UMAP图修饰

更多精彩请至《KS科研分享与服务公众号》
除了之前说过的三种常见单细胞基因可视化方法外,还有一种最常用的就是直接在UMAP或者TSNE降维图上显示表达某基因的细胞,这种方式更加直观,但是只能显示一个基因,一般用于标记重要的基因。

1、降维可视化

降维可视化一般用Dimplot函数,如果使用的是UMAP方法,可以直接使用UMAPPlot函数,但是感觉效果不好或者很混乱,可以考虑使用PCAPlot函数。可以看到,聚类效果不错,PCA不同细胞群还是分开了。


plot1 <- UMAPPlot(scedata, label = T, pt.size = 1)
plot2 <- PCAPlot(scedata, label = T, pt.size = 1)
library(cowplot)
plot_grid(plot1,plot2)

2、配色及修饰

Seurat包的函数作图都有默认配色,但小编一直觉得不好看,其实看很多文章发现他们的色彩搭配很好。这里简单介绍两组办法。第一种使用ggsci包,自动搭配。第二种则是从文章获取颜色,自己修饰即可。

plot3 <- DimPlot(scedata, label = T, pt.size = 1)+
  NoLegend()+labs(x = "UMAP1", y = "UMAP2",title = "Celltype") +
  theme(panel.border = element_rect(fill=NA,color="black", size=1, linetype="solid"),
        axis.text.y = element_blank(),
        axis.ticks.y = element_blank(),
        axis.text.x = element_blank(),
        axis.ticks.x = element_blank())
  
library(ggsci)
library(ggplot2)
#nature版本
plot4 = plot3 + scale_color_npg()
#science版本
plot5 = plot3 +scale_color_aaas()
plot_grid(plot4,plot5)

再看下其他文章中使用过的配色,虽然差不多,但是感觉好多了。

library(paletteer)
pal <- paletteer_d("ggsci::nrc_npg")[c(1,3,4,9,5)]
plot6 <- DimPlot(scedata, label = T, pt.size = 1,cols = pal)+
  NoLegend()+labs(x = "UMAP1", y = "UMAP2",title = "Celltype") +
  theme(panel.border = element_rect(fill=NA,color="black", size=1, linetype="solid"),
        axis.text.y = element_blank(),
        axis.ticks.y = element_blank(),
        axis.text.x = element_blank(),
        axis.ticks.x = element_blank())

library(RColorBrewer)
cell_type_cols <- c(brewer.pal(9, "Set1"), 
                    "#FF34B3","#BC8F8F","#20B2AA","#00F5FF","#FFA500","#ADFF2F",
                    "#FF6A6A","#7FFFD4", "#AB82FF","#90EE90","#00CD00","#008B8B",
                    "#6495ED","#FFC1C1","#CD5C5C","#8B008B","#FF3030", "#7CFC00")  

plot7 <- DimPlot(scedata, label = T, pt.size = 1,cols = cell_type_cols)+
  NoLegend()+labs(x = "UMAP1", y = "UMAP2",title = "Celltype") +
  theme(panel.border = element_rect(fill=NA,color="black", size=1, linetype="solid"),
        axis.text.y = element_blank(),
        axis.ticks.y = element_blank(),
        axis.text.x = element_blank(),
        axis.ticks.x = element_blank())
plot_grid(plot6,plot7)

3、基因可视化

单个基因的可视化使用FeaturePlot函数,用ggplot2修饰即可。


color <- c('lightgrey', 'blue','seagreen2')#设置颜色  
plot8 <- FeaturePlot(scedata, features = 'ACKR1',cols = color, pt.size = 1)+  
  theme(panel.border = element_rect(fill=NA,color="black", size=1, linetype="solid"))#加边框 

cols = c("gray", "coral2")
plot9 <- FeaturePlot(scedata, features = 'ACKR1',cols = cols, pt.size = 1)+  
  theme(panel.border = element_rect(fill=NA,color="black", size=1, linetype="solid"))#加边框 
plot_grid(plot8,plot9)

4、把细胞群圈起来

此外,有人问道,很多文章中用虚线框起来细胞群是如何做到的,之前我也尝试过用画PCA置信椭圆的办法,但是效果不理想,最好的方法就是导入PPT或者AI,自己动手添加。

好了,这就是今天的分享了,只是冰山一角,还有其他更多的方式,可以参考其他文献,找到适合自己的。

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值