当前位置: 首页 > news >正文

20W+喜爱的Pathview网页版 | 整合表达谱数据KEGG通路可视化

Pathview网站简介

网址:https://pathview.uncc.edu/

图片

图片

前段时间介绍了一个R包 — Pathview。它可以整合表达谱数据并可视化KEGG通路,操作是先自动下载KEGG官网上的通路图,然后整合输入数据对通路图进行再次渲染。从而对KEGG通路图进行一定程度的个性化处理,并且丰富展示信息。

Pathview包6大功能分别是:化合物和基因集同时绘制在通路上,多状态或样本同时或分开绘制,展示离散数据标记上下调或是否存在,不同来源的ID的转换和映射,不同物种使用时名称的处理和未注释物种的处理 (直接用于宏基因组或微生物组数据)。具体见Pathview包:整合表达谱数据可视化KEGG通路

Pathview网站是在该包的基础上,对一些核心功能进行延伸:

 
  • 简单直观的图形使用界面。

  • 用的是RESTful API,因此访问速度很快。(该API是一个bash脚本,通过cURL使用。cURL是一个利用URL语法在命令行下工作的文件传输工具)

  • 有完整的通路分析流程,支持多组学数据和整合分析。

  • 交互式并带有超链接的结果图能更好地解释数据。

  • 通过同步常规数据库获得最完整以及最新的通路数据。

  • 所有资源和分析都是开源的。

  • 注册免费,登录之后可以共享数据和保存分析历史。

  • 有完整的在线Help和帮助文档。

  • 多个示例带你快速上手使用。

输入数据

 

输入数据是最重要的且是唯一一个没有默认值的选项。储存数据矩阵的文件格式都是以tab或者逗号分隔的txt或者csv文件,点击编辑框可设置对照组和处理组样本。

图片

数据类型主要分为两类:

  • 任何类型基因数据(表达谱、组蛋白修饰、染色质开放性等)的数据表,需要包含一列基因ID用于数据映射,比如ENTREZ GeneSymbolRefSeqGenBank Accession NumberEnzyme Accession Number等等,在选项框中共有13种基因ID可选。这里的基因数据是一个广泛的概念,包括基因、转录本、蛋白质、酶及其表达、修饰和任何可测量的属性。基因数据文件的第一列是基因ID,第一行是样本ID。如果文件只有一列基因ID也是可以的。

  • 化合物数据也是如此,包括代谢物、药物、小分子和它们的测量值和属性,以及用于数据映射的化合物ID,选项框中化合物数据库ID共计22种,常用的是KEGG数据库ID。除了行是化合物,化合物数据文件格式和基因数据文件的基本一致(或许还需要指定样本列和实验设计)。

输出结果

 

结果主要是数据整合得到的通路图,有两种:原始KEGG视图和Graphviz视图。

图片

  • 原始KEGG视图将数据渲染到KEGG通路图(栅图,比如png格式),带有大量的前后关系和元数据,解释性更强。浏览器版本中该图是可交互的,每个Node都带有超链接,可点击它们转到更详细的解释。

  • 3种不同形状表示不同的对象。

  • 4种箭头表示四种对象之间的关系。

  • 12种蛋白质-蛋白质相互作用关系

  • 4种基因表达之间的关系。

  • 1种酶-酶关系:两步连续反应。

图片

  • Graphviz视图是使用Graphviz引擎(矢量图,如pdf格式)渲染的通路图,在点/线属性和图形拓扑上更好理解。

  • 16种连线类型

  • 4种节点类型

操作

网页版用示例展示了4个主要功能:多样本的KEGG视图,多样本的Graphviz视图,ID mapping和整合通路分析。最后一个会得到可视化文件和通路分析的结果统计文件(可下载),耗时较长。

该网站最突出的功能是ID mapping,整合的Mapper模块将13种的基因或者蛋白质ID,22种化合物或者代谢物ID比对到标准KEGG的基因或化合物ID。换句话说,能将输入的不同类型的数据ID精准比对到目标KEGG通路。

输入和输出选项/Input&Output

物种|Species:对应物种的KEGG号,科学名称或公用名称,比如可以在该选项中直接选择KEGG OrthologyKO——ko-KEGG Orthology-N。常用的是hsa——home sapiens-human。具体根据导入的数据类型判断。

通路选择|Pathway Selection:对于连续型数据采用GAGE(Generally Applicable Gene-set Enrichment)方法或者离散型数据(比如基因或者化合物ID表)采用over-representation方法做通路分析(GO、GSEA富集分析一网打进)

GAGE是一种自限性原假设的基因集分析方法,充分利用了表达谱数据,并将表达数据分为实验集和通路集分别进行分析处理,会考虑到基因集的上调和下调,得到更为准确和科学的结果。

如果没有得到显著的通路,会自动选择靠前的几个通路。基因数据和化合物数据一起分析的时候,会先各自筛选通路,然后通过meta分析将结果组合成更强大的全局统计量/ p值。

Pathway Selection一般建议选用auto,这在不确定通路的情况下再适用不过。若想自定义几个通路,则可以选择Manual

图片

通路ID|PathwayID:是KEGG的通路ID,一般是5位数字,当通路选择是auto时该选项自动关闭。

输出后缀|Output Suffix:在结果文件名后面添加的后缀。

图形选项/Graphics

Kegg Native:有KEGG图形渲染(.png)和Graphviz引擎渲染(.pdf)。Graphviz引擎渲染可能会因为KEGG的xml数据文件缺失数据而丢失点。

Same Layer:图层控制

  • Kegg Native项被勾选时,点的颜色会和通路图在一个图层,修改颜色的时候,节点标签不变。

  • Kegg Native项未被勾选时,线/点类型的图例会在一个图层,节点标签也会从原来的KEGG基因标签(或EC编号)变为官方基因符号。

离散型(基因和化合物数据)|Discrete:基因数据或者化合物数据一般是作为连续型数据使用。但也可以选择被视为离散数据,这样就可以以p值,倍数变化来选择显著的基因或者化合物列表,从而个性化标出离散数据中是否存在上下调。

但是网页版本没有设置选值的选项,还是Pathview包更适合使用这个设置。

Keys Alignment:当基因数据和化合物数据都不为NULL时如何对齐颜色标签。默认选项为“ x”(由x坐标对齐)和“ y”(由y坐标对齐)。

多状态|Multi State:默认值为TRUE,判定多状态(指多个样本或多列)基因数据或化合物数据是否应该整合并绘制在一张图中。

换句话说,不勾选“Multi State”的情况下,基因或者化合物节点会切成多个来对应数据中的状况数或者样本数,即由”一张图每个节点多种颜色”变为”多张图每个节点一种颜色”。

数据匹配|Match Data:默认是TRUE,判定基因数据或化合物数据的样本数是否匹配。

假设基因数据和化合物数据的样本大小分别为m和n(m>n),多余的空列NA(不加颜色显示)会在保证样本大小一致的情况下添加部分到化合物数据中,如此,才能在Multi StateTRUE时,得到相同数量的基因节点和化合物节点片段。

Signature Position:pathview的署名位置,默认是左下角。选择“None”的时候不显示。

Key Position:颜色标签的位置,默认是“左上角”。一般上面是基因节点,下面是化合物节点。选择“None”的时候不显示。

化合物节点名偏移|Compound Label Offset:设置化合物节点标签在默认位置或者节点中心处的长度(仅在Kegg Native=FALSE时有用)。这个选项在化合物用全名标记时很实用,能决定化合物节点的外观。

颜色选项/Coloration

节点计算|Node Sum:在比对有多基因或化合物时选择计算节点总数的方法。默认值是Sum,还有meanmedianmax,max.absrandom

空值的颜色|NA Color:基因数据或者化合物数据中缺失值或NA值的颜色。选项有透明"transparent"和灰色 "grey"

限制(基因和化合物)|Limit (Gene and Compound):基因数据或化合物数据转换为颜色时的限制值(即颜色标签的数值范围)。

这个选项是数值型的,一个框可以输入用逗号分隔的两个数字,比如“1,2”(不带引号)—— 第一个数字表示下限,第二个数字表示上限。输入单个值“n”的时候,网站认为范围是(-n, n)。

Bins (Gene and Compound): 在基因数据和化合物数据转换为颜色时,此参数可以设置颜色标签的长度。预设值为10。

Low, Mid, High (Gene and Compound):低,中,高(基因和化合物),这些参数可以选择“基因数据”和“化合物数据”的色谱。

“基因数据”和“化合物数据”的默认数据(低-中-高)分别是“绿色-灰色-红色”和“蓝色-灰色-黄色”。

这里既可以用颜色的通用名称(绿色,红色等),也可以用十六进制颜色代码(比如00FF00,D3D3D3等)或颜色选择器指定颜色。

网页版优势

以上是网页版的参数选择,较Pathview包而言少了Split Group|分组扩展节点|Expand Node功能,个别参数的灵活性也待改进,但网页版不需要占用本地内存,KEGG视图的节点能超链接到更详细的信息,而且多通路分析作为网页版最大的优势,有着完整的通路分析流程,支持多组学数据和连接公共通路。

这一步在本地的话还需要用gage包得到基因集在KEGG数据库的所有通路分析结果,代码如下:

> library(gage)
> data(gse16873)
> cn <- colnames(gse16873)
> hn <- grep('HN',cn, ignore.case =TRUE)
> dcis <- grep('DCIS',cn, ignore.case =TRUE)
> data(kegg.gs)
> #pathway analysis using gage  用gage做通路分析
> gse16873.kegg.p <- gage(gse16873, gsets = kegg.gs,
+ ref = hn, samp = dcis)
> #prepare the differential expression data  准备差异表达数据
> gse16873.d <- gagePrep(gse16873, ref = hn, samp = dcis)
> #equivalently, you can do simple subtraction for paired samples 得到成对的样本
> gse16873.d <- gse16873[,dcis]-gse16873[,hn]
> #select significant pathways and extract their IDs 得到重要通路的ID
> sel <- gse16873.kegg.p$greater[, "q.val"] < 0.1 & !is.na(gse16873.kegg.p$greater[,
+ "q.val"])
> path.ids <- rownames(gse16873.kegg.p$greater)[sel]
> path.ids2 <- substr(path.ids[c(1, 2, 7)], 1, 8)
> #pathview visualization Pathview可视化
> pv.out.list <- sapply(path.ids2, function(pid) pathview(gene.data = gse16873.d[,
+ 1:2], pathway.id = pid, species = "hsa"))

网页版本实现方式如下——Example 4

图片

导入必要的数据,这里主要是设置了Pathway Selectionauto,选完之后点Submit就能得到完整分析结果,出来的页面的中心处是设置说明,右侧Completed下是分析结果和分析日志。

图片

展示的是6种结果中的oxidative phosphorylation-氧化磷酸化代谢途径的结果。

图片

完整结果可看:

https://pathview.uncc.edu/resultview?analyses=5ddcd97621bd9&id=hsa-Homo%20sapiens&suffix=multistatekegg&autopathwayselection=True

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 大模型备案全网最详细流程说明【附附件】
  • SpringBootV12和mybatis全部知识点
  • pointnet2_ops_lib/.安装报错解决方案
  • 【fscan】Windows环境下的fscan安装与使用指南
  • html——VSCode的使用
  • 枚举对象序列化规则(将Java枚举转换为JSON字符串的步骤)
  • C#字符串操作:判断一个字符串是否存在于另一个字符串按特定字符分割后的子字符串中的几种方法
  • linux查看目录下的文件夹命令,find 查找某个目录,但是不包括这个目录本身?
  • 为什么需要重写equals和如何重写equals
  • 数据中台设计书及建设指南(中台及大数据解决技术方案)
  • 每天10个vue面试题(一)
  • 全能型CAE/CFD建模工具SimLab 详解Part1: Geomtry,轻松集成力学、电磁学、疲劳优化等功能
  • MySQL 创建数据库
  • Java面试八股之MySQL中的MVCC是什么,作用是什么?
  • coco数据集格式计算mAP的python脚本
  • 分享一款快速APP功能测试工具
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • JavaScript服务器推送技术之 WebSocket
  • javascript面向对象之创建对象
  • linux学习笔记
  • mongodb--安装和初步使用教程
  • Next.js之基础概念(二)
  • Python学习之路13-记分
  • Redis学习笔记 - pipline(流水线、管道)
  • SpriteKit 技巧之添加背景图片
  • Swoft 源码剖析 - 代码自动更新机制
  • 使用 @font-face
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • # linux 中使用 visudo 命令,怎么保存退出?
  • #define 用法
  • #我与Java虚拟机的故事#连载11: JVM学习之路
  • (+4)2.2UML建模图
  • (2021|NIPS,扩散,无条件分数估计,条件分数估计)无分类器引导扩散
  • (23)Linux的软硬连接
  • (24)(24.1) FPV和仿真的机载OSD(三)
  • (4)logging(日志模块)
  • (done) 两个矩阵 “相似” 是什么意思?
  • (k8s)Kubernetes本地存储接入
  • (vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)
  • (二十九)STL map容器(映射)与STL pair容器(值对)
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (七)理解angular中的module和injector,即依赖注入
  • (十)DDRC架构组成、效率Efficiency及功能实现
  • (学习日记)2024.01.09
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)甲方乙方——赵民谈找工作
  • ./configure,make,make install的作用
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .NET 服务 ServiceController
  • .net 设置默认首页
  • .NetCore发布到IIS
  • .Net多线程总结
  • .net中我喜欢的两种验证码