本文转载自http://www.omicshare.com/forum/forum.php?mod=viewthread&tid=146&extra=page%3D1%26filter%3Dtypeid%26typeid%3D18
library(ggplot2)
pathway = read.table("F:/R练习/R测试数据/R0-vs-R3.path.richFactor.head20.tsv",header=T,sep="\t")
pp = ggplot(pathway,aes(richFactor,Pathway)) # 画图
pp + geom_point()
pp + geom_point(aes(size=R0vsR3)) # 改变点的大小
pbubble = pp + geom_point(aes(size=R0vsR3,color=-1*log10(Qvalue))) # 四维数据的展示
pbubble + scale_colour_gradient(low="green",high="red") # 自定义渐变颜色
pr = pbubble + scale_colour_gradient(low="green",high="red") + labs(color=expression(-log[10](Qvalue)),size="Gene number",x="Rich factor",y="Pathway name",title="Top20 of pathway enrichment")
pr + theme_bw() # 绘制pathway富集散点图
ggsave("out.pdf") # 保存为pdf格式,支持 pdf,png,svg多重格式
ggsave("out.png") # 保存为png格式
ggsave("out2.png",width=4,height=4) # 设定图片大小
文件说明:
1)Pathway : 通路的名称
2)R0vsR3:差异表达基因中,属于这个通路的基因的数量
3)All_Unigene:所有基因中属于这个通路的基因的数量
4)Pvalue :富集分析p值
5)Qvalue:富集分析的Q值
6)richFactor :是 第二列 除以 第三列得到;
7)Pathway ID :通路ID
8)Genes:通路中基因的ID
9)KOs :通路中基因的KO号
补充一点:绘图仅仅用到4类,分布是第1,2,5,6列
再补充一点(来源25,26,28楼的讨论)
(1)在pathway名称中如有重名,这会导致错误。在表中每个pathway只能出现一次;
(2)文本中,出现了引号会导致错误。例如, Alzheimer's disease, Huntington's disease这样的名称。
这两个pathway 名称中的引号需要删除。引号的出现,会导致R无法识别两个引号间的其他符号(退格符,换行符等),导致文件读取错误。
如果一定要保留引号,则引号的内容再用引号囊括起来,例如:
"Alzheimer's disease","Huntington's disease",从而避免单个出现的引号对其他字符的影响 。