ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Cytoscape:庞大的相互作用网络出图神器

2021-05-15 15:52:04  阅读:278  来源: 互联网

标签:Style Cytoscape PPI 神器 出图 Edge 一列 节点 属性


图片

作者:麦子(转载请注:解螺旋·医生科研助手)


在生信分析里,各种物质相互作用网络(interaction network)的研究也很丰富,数据比较复杂。今天安利的Cytoscape就是一个专用于互作网络数据可视化的软件,比如蛋白-蛋白相互作用(Protein-Protein interaction, PPI):


图片


还有mRNA–microRNA相互作用:


图片


反正就这个意思,这些图不加说明的话长得都差不多。不好意思今天的图例找得有点丑0.0不过其实可以作得很漂亮的,我们来玩一玩(我真的不是在黑这些文章=_=)。


软件在官网下载:http://www.cytoscape.org/download.php,会自动检测你的操作系统,提供合适的版本。如果你没有安装必备的Java运行环境,它也会提示你安装:


图片


准备数据


先观察一下那些图,基本结构就是圈和圈之间的连线。圈圈在软件中叫Node(节点),有source node(源节点)和target node(靶节点)的区别;中间的连线叫Edge。所以,数据表要有一列源节点,一列靶节点,于是它们的关系(Edge)就自动确立了,其他的都是Node或Edge的属性。


以上面的第一张颜色有点像西芹百合的图为例(Nat Commun. 2017 Feb 16;8:14356.),从文献中下载作图所需的Excel表格(SupplementaryData 2),筛选出FOC≥1.5,q-value≤0.01的高置信(highconfidence, HC)PPI,贴到一张新的表格里。(不过,实例图还合入了既往报道过的PPI,我懒就不合了,所以待会出图会跟原文略有不同。)


表格的字段很多,但都可归为那三个元素:


图片


为了能让这么多的字段在窄窄的屏幕上显示完,我调成竖排文字了,请自行适应=_=


第1、2列是HUGO命名法,最后一列是具体相互作用的结构域,都属于注释内容,不管了。


导入文件时,把Common1设为源节点,Common2设为靶节点,后面的都自动检测为Edge的属性。


可以看到前两列的源节点都是ABCB5,靶节点分别为EPHA2和ERBB2,意味着ABCB5会分别和后两者发生相互作用。当咱们自己建表格时也是这样处理,如果一个蛋白要和好几个蛋白发生相互作用,仍是一个关系建一行。


图片


单击字段名选择属性。一般节点的属性都是字符串(String),即图中圈出来的“ab”符号,后面的1、123分别表示整数、长整数,1.0表示小数,y/n显然是YES/NO,一般软件会自动检测,但我们最好还是检查一下。


对于本例中的表格,可见HC-PPI、OncoPPI、ME-LUAD等等好几列都只有0和1两个值,软件会自动选择整数,但其实这些字段表示,那一行关系是否属于HC-PPI,是否属于OncoPPI、是否属于ME-LUAD,所以不是数值而是字符串。如果当初输入的是TRUE/FALSE,那这里就选y/n,这只是个人工作习惯问题。


出图:一点一点把数据变美


导入后会生成一张初始的图。嫌丑的话可以通过Layout菜单里的各种选项调整布局,或自己点选、框选(按住Ctrl)相应的节点来拖动,DIY布局:


图片


再通过左边控制台中的Style选项卡来设置画风,在第2步下拉框中选一个自己喜欢的模板,再在第3步选择Node,在第4步的Def.一栏调整细节;然后回到第3步选Edge继续修改细节:


图片


然后成果就是这样:


图片


到这步,跟文献实例主要的距离在于:1)人家的圈圈有大有小;2)有绿色标出比较重要的几个蛋白;3)有蓝色的线标出肺腺癌中具有互斥性基因组变异(就是数据表中的ME_LUAD字段)的PPI。


先看后两者,因为比较容易,就是用左边控制台的Select功能,筛选出那几个重要蛋白,和ME_LUAD值为1的关系:


图片


再回到Style选项卡,在Byp.一栏设置已选中元素的画风:


图片


在画布上单击,取消选择就OK了(不满意想换颜色就回到Select栏,点下方的Apply,再回到Style继续调)。成果:


图片


至于每个节点的大小,本来是要在表格中添加一列,设为Node的属性,再在Style中根据属性设置大小。


这篇文章的做法则是,用了Analyzer工具对数据做了进一步分析之后,用分析结果中的某一列作为节点属性:


图片


Analyzer在工具菜单里,一路点下去就会傻瓜式地得到很多信息:


图片


文章中另一些图片也是从这个结果中来,这里就不展开了。就看看界面下方的表格栏,一下子多了很多列,这些分析结果都可以作为Node的属性,进一步做可视化处理:


图片


回到左边的Style栏,打开Size的下拉框,Column选择Degree,Mapping Type选择Continuous Mapping,再单击Current Mapping那个图例,就可打开弹框,拖动两个锚点设置最大最小值,随意拖到自己看着舒服为止。意思很明了,就是每个节点的大小,是根据Degree值来展示的。


图片


因为节点有大小变化,所以理应创建图例说明(然而文章中没有):


图片


导出图片,可惜图例并不能直接插到完成图中,还需要后期PS合成,唉:


图片


还可以展示更丰富的信息


刚才我挖了个坑,嫌这张图片丑,还可以变得更美、展示更多信息的。现在我就来填这个坑。下面有些地方就要脱离这篇文献的实例了。


一、节点的颜色也可以根据属性值设置


图片


做法和刚才设置Size时大同小异。然后,刚才那些筛选出来的特殊蛋白,用别的形状表示,就在Shape中设置:


图片


同理,如果研究不同元素的相互作用,如mRNA-microRNA,可以在数据表中加一列,注上每个源节点的类别,然后将microRNA设成菱形啥的。


二、Edge的粗细可根据某个值变化


图片


不过这篇文章的数据不太合适展示这个功能,看看另一篇,线条粗细表示相互作用强度:


图片


Sci Rep. 2017 Jan13;7:40356.


三、可通过箭头、颜色等表示上调、下调的方向


上面Sci Rep.那张图就是用红色表示上调,绿色表示下调,作法的本质也就是在数据表中加一列设置节点属性。


当然也可以通过箭头和标签表示。然而这篇文章竟然没提供Excel表,我只好随便建一个来演示。


在表中加上一列表示Direction属性:


图片


把direction设上标签、颜色、形状:


图片


注意形状那里是选择Target Arrow Shape一项,如果选了Source Arrow,那么箭头就是指向源节点了。然后出图:


图片

所以基本的作图思想就是:1、建立关系;2、展示全局属性(通过Style实现);3、高亮特殊属性(Select+Style、Style各项下拉框)。


常用的功能差不多也就这些,基础版本就能实现。如果还要探索多一点玩法,可以去官网下载插件(APP):


图片


如果你还有更精致的追求,App也满足不了你,那么……Cytoscape是个开(深)源(水)软件,你可以自己写程序开发App的,官网有教程。麦子就不再往下挖了。

图片


标签:Style,Cytoscape,PPI,神器,出图,Edge,一列,节点,属性
来源: https://blog.51cto.com/u_15127638/2777815

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有