近期,看到一篇发表在NC上的文章,是关于新冠多组学的文章,因为看到这篇文章提供了详细的数据,所以对其进行复现下,从nature子刊出发,循序渐进。读这篇文献我们也应该感受到,现如今发文章要这么多个组学(全转录组、蛋白组、代谢组、全基因组)才能发出好文章。
图片(图片来源:文章截图)
本次复现系列分为五个部分:
- 模式图与柱状图
- 批量箱线图并加显著性
- 样本时间序列图
- 多组GO分析气泡图
-
GWAS基本数据作图
复现这些部分主要是这些图值得我们学习,也是这篇文章中的一些主要内容。当然,除此之外的部分也值得去深究,单会在下一个系列---转录组系列体现。敬请期待!!!
首先看Figure1,看起来很简单,但是有很多东西能够学习,小编也能为大家拓展介绍更多内容。包括---模式图制作、韦恩图和柱状图制作!
1、模式图
其实NC文章这个模式图很简单,涉及到4个图形,人、DNA、RNA和密度图的模式图,网上找素材或者自己画都比较简介。不过这里小编要介绍的是一个SCI论文专用的模式图素材库,能够满足你所有的需求。
网址:https://scidraw.io/
(图片来源:网站截图)
网站首页已经显示了常用的一些素材,如果需要则自己搜索,因为是外文网站,所以搜索关键词要用英语。在搜索前,勾选vectors only,检索的就是矢量图,下载后导入AI修饰。
虽然网站免费,但是如果使用请注明来源和引用或者致谢,尊重知识产权!
2、韦恩图
韦恩图就不多说了,有很多在线工具可以实现,可以检索一下,不一定非要用R语言,不然只会增加自己工作量。这里列举几个常见的:http://bioinfogp.cnb.csic.es/tools/venny/index.html
http://www.biovenn.nl/index.php
http://www.pangloss.com/seidel/Protocols/venn4.cgi
https://bioinfogp.cnb.csic.es/tools/venny/index.html
http://jvenn.toulouse.inra.fr/app/example.html
3、柱状图的实现做柱状图的数据很简单,整理下一下如下:
图片文章中的柱状图是用barplot化的,比较简单。
setwd("D:/生物信息学")#设置工作路径
A <- read.csv("普通柱状图.csv",header = T)#读取数据
barplot(A$number~A$Group,#画图数据及x轴分组
ylab="Increased",#y轴title
col="red", #柱状图颜色
main="mRNAs",#柱状图title
border = "white")#柱状边框颜色
结果如下,可以说与文章里的图片一摸一样。
图片如果说到这里文章结束了,那么也太草率了,接下来我们利用ggplot2画一下柱状图,毕竟ggplot2是画图界的天花板。使用ggplot2一方面巩固之前的一些内容,第二对于后续的内容理解上会有帮助。
library(ggplot2)
ggplot(A,aes(x=Group,y=number,fill="red"))+
theme_bw()+#去掉背景色
geom_bar(stat="identity")+
theme(axis.text.x = element_text(size = 10,angle = 90,vjust = 1,hjust = 1))+ #x轴元素大小、方向设置
theme(legend.position = "NA")+#取消legend
labs(x=NULL,y="Increased",size=10,title = "mRNAs")+#x,y,titile设置
theme(panel.grid = element_blank())+#去掉网格
theme(plot.title = element_text(hjust = 0.5))#标题居中
图片
看到这里相信大家发现一个问题,x轴组别的排序和文章中不一样,也和我们提供的顺序不一样,这是因为ggplot默认按照首字母排序的,所以需要解决这个问题。使用forcats包将其转化为因子,进行固定排序即可!
install.packages("forcats")
library(forcats)
A$Group <- as.factor(A$Group)
A$Group <- fct_inorder(A$Group)
这样重新画图就解决了,记住这一点能够解决不少烦恼。
图片其他图的画法和这个一样,依次完成,然后排版即可!
网友评论