R语言使用ggplot2绘制火山图?

火山图是一种用来区别差异表达基因的常见的图,有如下几种方法:

(1) 使用Graphpad Prism绘制,具体步骤如"小张聊科研"的描述 ( http://www.sohu.com/a/159512191_652735 )。问题:我没有安装Graphpad Prism,网上搜破解版没找到,只好作罢

(2)使用第三方工具,如TBtools ( https://www.jianshu.com/p/909e99af28c9 )或者生信人开发的Sanger工具(http://www.sohu.com/a/196696514_419916),问题来了,我发现要注册或者转发之类的,学习成本太高了

(3)  使用R语言绘制,需要安装ggplot2

问题1: 开始使用的版本3.4与最新版的ggplot2不兼容,需要把R语言更新到最新版3.6终于成功了

问题2: 使用清华大学的R语言镜像,会比较快,不然有可能安装不了ggplot2

完整代码为:

setwd("your/directory")

temp<-read.table("volcano_test.txt",header=T,sep="\t",quote="")

temp$threshold[temp$padj < 0.05 & temp$log2FoldChange>0 ] = "up"

temp$threshold[temp$padj < 0.05 & temp$log2FoldChange<0 ] = "down"

temp$threshold[temp$padj > 0.05 & (temp$log2FoldChange>=0 | temp$log2FoldChange <= 0)] = "non"         

p<-ggplot(temp,aes(x=temp$log2FoldChange,y=-log10(temp$padj),colour=threshold))+xlab("log2(Fold Change)")+ylab("-log10(p-Value)")+

  geom_point(size=4,alpha=0.6)+

  scale_color_manual(values =c("#0072B5","grey","#BC3C28"))+

  geom_hline(aes(yintercept=-log10(0.05)),colour="grey",size=1.2,linetype=2)+

  geom_vline(aes(xintercept=0), colour="grey",size=1.2,linetype=2)

 p   #显示图片

点击export---->save as image即可保存图片

主要目前ggplot2主要在windows系统上 运行,在Linux服务器端由于图形化界面不够友好,不建议使用服务器端R语言做图

参考于  http://www.sohu.com/a/301090670_785442  

https://www.cnblogs.com/zongfa/p/8535350.html

你可能感兴趣的:(R语言使用ggplot2绘制火山图?)