pathview R 包是一个集成 pathway 通路数据与可视化的工具集。它用于把用户的数据映射并渲染到相关的 pathway 通路图上,用户只需要提供基因或者化合物数据(gene or compound data)并指定目标通路(specify the target pathway)即可。

pathview 会产生 native KEGG view 和 Graphviz view 两种 pathway 查看方式,前者以 native KEGG graph (.png) 进行渲染,后者则使用 graphviz layout engine (.pdf)。pathview 作为主程序提供了 downloader, parser, mapper 以及 viewer 四部分功能:自动下载通路图表数据,解析并映射用户数据,最后把 mapped 的数据渲染到通路图上。

Pathview automatically downloads the pathway graph data, parses the data file, maps user data to the pathway, and renders pathway graph with the mapped data.

pathview 安装

在 R 命令行下 pathview 安装:

# pathview 依赖包

> source( "http://bioconductor.org/biocLite.R" )

> biocLite(c("Rgraphviz", "png", "KEGGgraph", "org.Hs.eg.db"))


# pathview 安装

> biocLite("pathview")

我们也可以通过 R-forge 的方式安装:

> install.packages("pathview", repos="http://R-Forge.R-project.org")

或者通过下载 pathview 的源码包进行安装,这里不介绍。

pathview 使用

利用 pathview 自带的 example 数据(data(package="pathview" 可查看 pathview 包所有的 example 数据)绘制人 hsa04110 通路图:

> library(pathview)

> data(gse16873.d)

> pv.out <- pathview(gene.data = gse16873.d[, 1], pathway.id = "04110", species = "hsa", out.suffix = "gse16873")

当前目录得到 hsa04110.gse16873.png 通路图:

其中 gene.data 接收的是矩阵(或向量)的基因数据,这些数据既可以是数值型(like log2 fold change or absolute expression levels)也可以是基因 id 数据(默认为 entrez 的 gene id,gene.idtype = "entrez"),取决于我们想要得到什么样的可视化结果。

使用 gene IDs 的数据,得到的 hsa04110.geneid.png 如下:

> pv.out <- pathview(gene.data = c("1029"), pathway.id = "04110", species = "hsa", out.suffix = "geneid")

pathview 是一款功能强大的工具集,除了可以展示规范信号通路图外,还支持代谢通路图。利用 pathview 的化合物、基因内置数据,绘制代谢通路图如下:

> data(demo.paths)

> sim.cpd.data = sim.mol.data(mol.type = "cpd", nmol = 3000)

> i <- 3

> print(demo.paths$sel.paths[i])

[1] "00640"

> pv.out <- pathview(gene.data = gse16873.d[, 1], cpd.data = sim.cpd.data, pathway.id = demo.paths$sel.paths[i], species = "hsa", out.suffix = "gse16873.cpd",keys.align = "y", kegg.native = T, key.pos = demo.paths$kpos1[i])

其中,cpd.data(与 gene.data 一样)为 KEGG 的化合物 IDs(KEGG compound IDs),CHEMBL 数据库中超过 20 种 ID 都可以用在这里。gene.data 与 cpd.data 不能同时为空。

ok,就先介绍到这里,更加详细的使用请参考:

  • http://pathview.r-forge.r-project.org/

  • https://www.rdocumentation.org/packages/pathview/versions/1.12.0/topics/pathview

本文分享自微信公众号 - 生信科技爱好者(bioitee)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

R 包 pathview 代谢通路可视化的更多相关文章

  1. 多组学分析及可视化R包

    最近打算开始写一个多组学(包括宏基因组/16S/转录组/蛋白组/代谢组)关联分析的R包,避免重复造轮子,在开始之前随便在网上调研了下目前已有的R包工具,部分罗列如下: 1. mixOmics 应该是在 ...

  2. 《R包的分类介绍》

    R分析空间数据(Spatial Data) R机器学习包(Machine Learning) R多元统计包(Multivariate Statistics) R药物(代谢)动力学数据分析包 R计算计量 ...

  3. R包MetaboAnalystR安装指南(Linux环境非root)

    前言 这是代谢组学数据分析的一个R包,包括用于代谢组学数据分析.可视化和功能注释等众多功能.最近有同事在集群中搭建蛋白和代谢流程,安装这个包出现了问题,于是我折腾了一上午. 这个包的介绍在:https ...

  4. 利用R语言进行交互数据可视化(转)

    上周在中国R语言大会北京会场上,给大家分享了如何利用R语言交互数据可视化.现场同学对这块内容颇有兴趣,故今天把一些常用的交互可视化的R包搬出来与大家分享. rCharts包 说起R语言的交互包,第一个 ...

  5. R 包

    [下面列出每个步骤最有用的一些R包] .数据导入 以下R包主要用于数据导入和保存数据: feather:一种快速,轻量级的文件格式:在R和python上都可使用 readr:实现表格数据的快速导入 r ...

  6. 开发自己的R包(转)

    R不必说,数据统计分析可视化的必备语言,R包开发的门槛比较低,所以现在随便一篇文章都会发表一个自己的R包,这样有好处(各种需求早有人帮你解决了)也有坏处(R包太多,混乱,新手上手较难).作为生信工程师 ...

  7. GO 和 KEGG 的区别 | GO KEGG数据库用法 | 基因集功能注释 | 代谢通路富集

    一直都搞不清楚这两者的具体区别. 其实初学者搞不清楚很正常,因为它们的本质是相通的,都是对基因进行归类注释的数据库. 建议初学者自己使用一下这两个数据库,应该很快就能明白其中的区别. (抱歉之前没讲清 ...

  8. 如何制作自己的R包?

    摘自 方匡南 等编著<R数据分析-方法与案例详解>.电子工业出版社 R包简介 R包提供了一个加载所需代码.数据和文件的集合.R软件自身就包含大约30种不同功能的包,这些基本包提供了R软件的 ...

  9. 如何制作自己的R包

    如何制作自己的R包? 摘自 方匡南 等编著<R数据分析-方法与案例详解>.电子工业出版社 R包简介 R包提供了一个加载所需代码.数据和文件的集合.R软件自身就包含大约30种不同功能的包,这 ...

  10. R包对植物进行GO,KEGG注释

    1.安装,加载所用到到R包 用BiocManager安装,可同时加载依赖包 source("https://bioconductor.org/biocLite.R") BiocMa ...

随机推荐

  1. WebDriver API及对象识别技术

    html页面的iframe的切换: iframe框架在html页面:实际就是多个html页面的相互嵌套:如果存在多个,则操作对象一直停留在主文档页面:    如果需要操作子文档页面则需要实现ifram ...

  2. PyCharm解决Git冲突

    技术背景 在前面的一篇博客中,我们介绍了Fork到自己名下的本地仓库如何与远程原始仓库创建链接的方法.在这篇文章中,我们将要讲解如何应对在这种异步开发的过程中经常有可能会遇到的Git冲突问题,在Pyc ...

  3. python获取本地ip地址1

    import socket def get_host_ip(): """ 查询本机ip地址 return: ip """ try: s = ...

  4. [Chrome]插件的导出与导入[转载]

    1 文由 毕竟是在墙内,暂时又没有有效的FQ工具,换设备了,但需要使用原先旧设备下载的插件.只能出此下策liao~ 2 导出插件 step1 Chrome: 进入插件管理界面 Chrome: 更多工具 ...

  5. 【题解】Luogu P2671 【求和】

    因为人傻常数大写了一天的题目. 原题传送门 题目意思另一种表达: 定义特殊二元组\((x,z)\). 1.\(x<z\). 2.\(x\)与\(z\)要么都为奇数要么都为偶数. (即\(x \ ...

  6. kettle从入门到精通 第十一课 kettle javascript 解析json数组

    1.json步骤虽然可以解析json数组,但是不够灵活.通过javascript步骤来解析json数组比较灵活,且可以按照需要组装数据流转到下个步骤. 1)步骤名称:可以自定义 2)Transform ...

  7. Linux升级安装GCC

    各发行版本Linux中,其自带的gcc安装源版本都比较旧,我所使用CentOS 6系统中,gcc版本只有4.4.7.最近要安装几个软件要求gcc 4.8+,无奈只能手动升级gcc. 1. 下载最新版本 ...

  8. 如何玩转国产神器:接口一体化协作平台Apifox!

    前言:Apifox是什么? 简介: 简单来说,Apifox = swagger + mock + postman+Jmeter,是API 文档.API 调试.API Mock.API 自动化测试一体化 ...

  9. Docker入门实践笔记-Dockerfile

    镜像是一个打包文件,其中包含了应用程序及其运行所依赖的环境,例如文件系统.环境变量.配置参数等等 联合文件系统 容器镜像内部并不是一个平坦的结构,而是由许多的镜像层组成,每层都是只读不可修改修改的一组 ...

  10. Linux 查看内存使用情况的几种方法

    *以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」https://mp.weixin.qq.com/s/27UaVm5_FMhCnxB88pc0QA 在运行 Linux 系 ...