根据单细胞表达矩阵,箱图可视化高表达基因
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据单细胞表达矩阵,箱图可视化高表达基因相关的知识,希望对你有一定的参考价值。
参考技术A 在 scater R包里,有个函数 plotHighestExprs ,可自动根据SingleCellExperiment对象数据进行绘制。但有个缺点就是太慢了,具体操作如下具体可分为三种情况
最主要的原始是,不同细胞的文库大小可能因测序过程存在差异。通过标准化,可使基因在不同细胞的表达情况具有可比性。
上述两步也可合并成一步,但可能跳的有点多,关键理解如下示例的第三步的除法:
(1)R语言的计算是向量化的;例如可以进行向量间加减乘除运算,具体规则,自己尝试下理解更深刻;
(2)应用到矩阵时,可以理解为一行代表向量的一个元素。
如下图,结果与我们上面计算的有点不同;
查看 NormalizeData 帮助文档可知,其默认方法是计算每个细胞中基因表达量与文库的比值,然后乘一个size.factor(一般是10000),最后进行log转换(加1,避免0以及零点几的无意义结果 log1p )
参考文章
https://nbisweden.github.io/workshop-scRNAseq/labs/compiled/seurat/seurat_01_qc.html
热图展示单细胞转录组基因在不同组中表达阳性细胞差异
参考技术A近日,看到-生信作曲家-发的帖子,展示的内容是单细胞差异基因的图,是利用热图的形式展现的,在一个热图上可以展示不同cluster中不同组的基因表达阳性细胞比例,差别一目了然,可以同时展示很多的基因。
首先构建作图数据,我们用最“笨”的办法吧,分别找出不同细胞类型下,两组之间(GM, BM)的差异基因,这里设置阈值为0,让所有基因都保留下来。然后设置需要查看或者展示的基因,分别在各个差异基因文件中提取这些基因的表达数据,我们需要的数据是ptc1和ptc2这两列,分别对应两个分组。最后将所有细胞差异基因中提取的数据进行合并就可以作图。
热图的做法很简单,参考我们之前的系列:
画热图只标注感兴趣的基因名称
热图2:分组聚类,让热图分裂
热图3:热图行列分组信息注释
热图4:ComplexHeatmap画复杂热图行列注释
我们可以直接用pheatmap来画,但是区别在于需要将每个基因在细胞中的表达数值显示在热图上,只需要加display_numbers = TRUE参数即可。
最后导出pdf图片,用AI修饰一下即可。
当然ComplexHeatmap包的Heatmap函数也是适用的。如果需要进行更多的修饰和改造也是可以的。( 补充:之前的热图系列没有说到一个问题就是ComplexHeatmap做热图之后的legend标题的问题,自动显示的是matrix,而且每画一次,就在后面加数字,有很多小伙伴有这个疑问。其实在他的参数heatmap_legend_param 中是可以定义标题和legend位置的。 )
最后修饰修饰成为一个可发表的图片。
这个热图还是挺实用的,有需要示例数据的小伙伴可在我的公众号《KS科研分享与服务》----联系作者索取数据,记得在公众号后台留下您的邮箱!
以上是关于根据单细胞表达矩阵,箱图可视化高表达基因的主要内容,如果未能解决你的问题,请参考以下文章