本文转载自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",从而避免单个出现的引号对其他字符的影响 。

绘制pathway富集散点图的更多相关文章

  1. Google earth engine 绘制图像间散点图

    这段代码实现了在Google earth engine中绘制图像/波段间的散点图,得到相关关系.适用于探究数据间的相关性,进行数据的交叉验证. 代码来源于官方帮助:https://developers ...

  2. Pathway富集分析气泡图

    data.tsv > pathway = read.table("data.tsv",header = T, sep="\t") > library ...

  3. KEGG富集分析散点图.md

    输入数据格式 pathway = read.table("kegg.result",header=T,sep="\t") pp = ggplot(pathway ...

  4. [R] 如何绘制各样本的pathway丰度热图?

    前言 一般而言,我们做完pathway富集分析,就做下气泡图或bar图来进行展示,但它们实际上只考虑了富集因子和Pvalue.如果我们不关注这两个因素,而是在乎样本本身的pathway丰度呢? 对于K ...

  5. 【带着canvas去流浪(4)】绘制散点图

    目录 一. 任务说明 二. 重点提示 三. 示例代码 四.散点hover交互效果的实现 4.1 基本算法 4.2 参考代码 4.3 Demo中的小问题 示例代码托管在:http://www.githu ...

  6. Python_散点图与折线图绘制

    在数据分析的过程中,经常需要将数据可视化,目前常使用的:散点图  折线图 需要import的外部包  一个是绘图 一个是字体导入 import matplotlib.pyplot as plt fro ...

  7. 带着canvas去流浪系列之四 绘制散点图

    [摘要] 用原生canvasAPI实现百度Echarts图表 示例代码托管在:http://www.github.com/dashnowords/blogs 一. 任务说明 使用原生canvasAPI ...

  8. # 使用scatter()绘制散点图

    使用scatter()绘制散点图 之前写过一篇,使用magic function快速绘图的教程了:https://www.cnblogs.com/jiading/p/11750001.html.但这种 ...

  9. 第五篇:R语言数据可视化之散点图

    散点图简介 散点图通常是用来表述两个连续变量之间的关系,图中的每个点表示目标数据集中的每个样本. 同时散点图中常常还会拟合一些直线,以用来表示某些模型. 绘制基本散点图 本例选用如下测试数据集: 绘制 ...

随机推荐

  1. platform device和platform driver简述

    首先我们在module_init中使用platform_driver_register来注册我们的驱动.一般来说platform_driver_register放在module_init的最后调用,因 ...

  2. 【Active入门-3】ActiveMQ学习-发布者与订阅者

    2015年4月28日 1个发布者,1个订阅者,topic 方式1: 先发布消息: 然后订阅消息: 方式2: 先订阅消息: 然后发布消息:订阅者如下: 结论1: 从上面可以看出,消息发布需要在线发布. ...

  3. bzoj4385 Wilcze doły

    Description 给定一个长度为n的序列,你有一次机会选中一段连续的长度不超过d的区间,将里面所有数字全部修改为0.请找到最长的一段连续区间,使得该区间内所有数字之和不超过p. Input 第一 ...

  4. JavaScript之图片操作2

    在前一次,我们实现最简单的图片切换效果,这一次,依旧还是图片切换,具体效果如下: 通过点击下面的小图,上面的大图和标题随之切换.因此,我们需要三个容器分别放标题,大图和小图. <!--大图描述- ...

  5. 基于HttpClient JSONObject与JSONArray的使用

    package com.spring.utils; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import org.ap ...

  6. http接口测试工具——RESTClient

    摘要: RESTClient是用java Swing编写的基于http协议的接口测试工具,工具比较灵巧,便于做接口的调试,源码在官网上可以下到,感兴趣的可以研究一下 WizTools.org REST ...

  7. [转载]tornado.database添加PooledDB连接池功能

    转载自 http://chenxiaoyu.org/2009/12/01/python-tornado-dbutil.html tornado.database模块简单包装了下对MySQL的操作,短小 ...

  8. Scrapyd发布爬虫的工具

    Scrapyd Scrapyd是部署和运行Scrapy.spider的应用程序.它使您能够使用JSON API部署(上传)您的项目并控制其spider. Scrapyd-client Scrapyd- ...

  9. ubuntu18.04修改时区

    运行如下命令: sudo tzselect 然后选择亚洲Asia,继续选择中国China,最后选择北京Beijing. 然后创建时区软链 sudo ln -sf /usr/share/zoneinfo ...

  10. mybatis匹配字符串的坑

    where语句中我们经常会做一些字符串的判断,当传入的字符串参数为纯数字时,在mybatis的条件语句test里匹配全数字字符串需要注意会有如下现象: 所以里面的字符串需要加单引号,mybatis是匹 ...