科研绘图交流

科研绘图交流

常言道:一图胜千言

是时候总结一波读者来信了,稍微统计了一下问题列表,不意外,就是关于某某图如何画这样的问题遥遥领先。以前我们公众号还刻意出过几个绘图业务给大家,如下:

[有偿专区]TCGA 预后作图

[有偿专区]随机抽样批量做差异分析

但是现在公众号排期比较满,没有空给大家专门做交易帖了。但是这个绘图需求的确是应该得满足,所以开辟一个科研绘图交流微信群,请大家先看看我接下来总结的绘图常见的一些问题,如果有交流的需要,请加入。

不知道数据如何准备

很多人不知道如何绘制圈圈图,本质上并不是绘制图本身非常难,而且这些图囊括了非常多的信息,是多种数据融合而成,如下:

在我以前的推文:一层一层的剥开你的圈 详细介绍过,用什么工具来绘制该图真心不重要,代码也是小事,反而是这一层一层的圈背后的数据意义更重要。

不知道代码如何写

比如常见的火山图,一般人都知道其背后的数据是什么,以及其意义,火山图的本质是一个Plus版的散点图,其中包含两个重要的概念:

  • adj.P.val值为纵坐标,有时又叫做q值,是调整后的P值(学名叫多重检验校正),用来验证错误率的,比如adj.P.val值等于0.05,也就是说100个样本中有5个样本是假阳性,所以adj.P.val值也是越小越好。P.value是统计学检验变量,代表差异显著性,一般p-value小于0.05代表具有显著性差异,但可根据具体情况适当调整。一般绘图时候会做-log10的转化。
  • logFC为横坐标 ,FC(FoldChange)为差异表达基因上调倍数,然后取log,logFC一般表达相差2倍以上是有意义的,放宽要求1.5倍或者1.2倍也可以接受。

用最简单的R语言,出图如下:

很多写教程的小朋友喜欢揪着这些细节长篇大论,如下:

火山图(Volcano Plot)是一类用来展示组间差异数据的图像,因为在生物体发生变化时从全局角度而言大部分的基因表达没有或着发生了很小程度的变化,只有少部分基因的表达发生了显著的变化。故而,火山图常见于RNA表达谱和芯片的数据分析中,最常用于分析基因的差异表达。设定分组并赋值给变量color,我们把P<0.05, log2FoldChange > 2定义为上调,颜色设置为红色,把P<0.05, log2FoldChange < -2定义为下调,颜色设定为蓝色,其他既不上调也不下调的颜色设定为灰色

其实会R语言的,真心就是一句话而已。

不知道细节如何调整

很明显,你要是汇报上面那样的火山图给合作者或者老板,肯定会被鄙视。那么,如何把粗犷的图调整到符合正常人的审美呢?比如下图:

不知道如何美化

即使搞懂了数据是什么,也还不够,这样的图片只适合做普通的演示,远达不到出版的标准。作为生物信息学工程师的我们当然认为数据分析本身很重要,这个过程很值得尊重。但事实上,更多时候没有人去关心你的过程你的艰辛,因为大部分数据最后展现到paper上面其实只利用了部分结论而已,比如下面:

这样的图,往往不是R语言本身能一条龙完成的,需要使用AI等专业工具把值得发表的有限的结果结果展现出来即可。

不知道如何添砖加瓦

不知道如何提炼精华

如果想展现一个基因与另外一个系列的几十个基因的表达相关性,大家首先想到的必然是散点图,并且计算相关系数,P值,如下:

但这样的图真的好吗?

不知道图背后的生物学意义

其实了解了科研图背后的数据,而且图的确出自于自己的手,应该是没有这个问题。但也有一些时候,我们能绘图并不是因为我们很牛,而且他人的工具非常好用。比如一些mutation signatures,或者 癌症突变全景图等等。

不知道多图关联成生物学故事

这是我多次强调的事情:生物信息数据分析文章就是看图写作文 这里,我就不赘述了,大家自行点击查看。

交流群并不是要交大家从开始学R语言绘图,这不现实,学一下R语言基础,了解几个R绘图系统,了解STHDA, stackoverflow 教学社区及问题解决社区,学习根本就不是个事。但更多的时候是学习资料太多,而自己的时间真的有限,勤奋好学的我们要么是淹没在知识的海洋里要么是像无头苍蝇一样在打转,抓不住重点。

信号通路图······

蛋白质结构示意图······

基因图······

流程图······

实验方法示意图······

细胞效应图······

各种数据处理图······

别人的图挺好看,我想画应该用什么软件好?

我的图分辨率很大啊,为什么还是不清楚?

图像有那么多格式,有什么区别?

矢量图和位图是什么鬼,投错了出版社还拒收?

我的修改意见回来了,可是我居然看不懂?

图像采集出了问题,我不想重新做实验啊,怎么办?

为什么我的eps插入到word里就变了?

我的图在我电脑上看还好好的,一到别人电脑怎么就出问题了?

怎么在压缩图像的同时质量还能不损失呢?

我明明存成矢量格式了,为什么不能无限放大?

Comments are closed.