目录
前言
Cytoscape是个很棒的画互作关系图的软件,网上有很多教程,但并不是很完美,遂按照自己的学习笔记写一篇教程,这里用的软件版本为3.8.2
零、数据准备
1、二维关系表一维化
这是原表,展现菌群与样本之间的相关性的二维表
可用power query进行逆透视化,office2019已经集成在程序内

2、关注基因制表
有时互作关系表极为庞大,我这里只关注top30的基因
在excel上处理一下,进行排序,直接选取这前30菌名即可,做成txt文件
3、属性文件
比如平均丰度
这里展现了节点以及其对应的平均丰度属性
一、数据导入
打开Cytoscape,导入互作关系表
选择一维化的表,并对每列值做标注
如图,将第一列设置为源节点,将第二列设置为靶节点,第三列设置为边的属性
边的属性,这里注意设置data type,值的属性设置为浮点数1.0,节点则设置为ab名称型
设置完成后,点击ok进行导入
由于互作表极大,且我们不需要完整的互作关系网络图,因此在提示表格很大,显示需要很长时间,选择取消,不影响后续筛选操作
然后,导入之前制作的top30菌名的txt表,筛选出我们要看的图
这里我已经将上图的table3,Sputum composition 前30位复制到这个txt表中,点击确定,即选中了我们要的基因
然后将其单独拎出
得到最粗糙的原始网格图(下图是我其它一次任务的图,内容不一样,但长的差不多,很丑,反正后续还要再调)
导入之前做好的属性注释文件,点击这个按钮
这样我们就将了对应名字的丰度属性导入了
二、图的筛选
通过这种筛选,可以取出我们想要的属性的图
node是节点,edge是边
比如筛选相关性大于0.3的线,点击左侧filter筛选,创建一个筛选条件
选择条件为edge:值,这个是导入的表中的相关系数,选择is not,不是-0.3-0.3范围的线,如果这里没有这个选择范围,那就是之前边属性的data type选错了,数值选1.0浮点数形式
依然按之前的方法,导出为新表
可以看到很多自相关的项,查看表,即可得知这些都是自己和自己相关系数为1的,这是之前数据处理不严谨,再次把1给筛掉即可(写这个笔记的时候还是新手,不过给新手看倒是很不错了~)
导出后,按刷新按钮重置一下排列,接下来就是美化工作了
三、图的布局
软件提供了几种布局形式,例如
将图布局成圆形,并且按照节点名字进行分类
可以通过筛选来查看分类情况
注意,按照名字分类需要预先对名字起个头,比如st:xxxxxx,sp:xxxxxx
这样,st和sp将被分别放在两个半圆中
通过筛选的方法,选中需要的点,拖动排布即可
四、设置图中节点与边的样式-以及根据值大小调整
先看翻译图
这里做一次实例操作以学习
选择左侧的style选项卡,点击上方下拉框,选择directed风格
点击下方node选项卡
设置节点的字大小为5,根据自己需要调整
设置节点的圈大小为6(暂时这么设,待会儿修改成丰度越大圈越大)
点击edge选项卡,切换到边的设置
设置链接线粗细为0.8(暂时这么设,待会儿设置为相关性越大线越粗)
根据值相关性调整
点击选项卡的右边小箭头,可以单独对某些设置属性,或者如下根据值设置一个连续的变化
如图,按照丰度调整圈的大小
如果需要单独对选定的做调整,则可用第三个框里面调,如下(这个选项是调整标签在点的位置)
若要添加像如上的图例,则可在画布右键一个个添加点,暂未发现批量添加的方法,知道的同学/老师请在下方留言,非常感谢
然后修改
这个名字,以导入对应属性文件
五、图放大缩小-旋转
启用功能,呼出面板
这个可以控制缩放,在达到一定数值后可以点击右边的转圈按钮,将当前缩放设置为基准1的大小,就可以再次进行缩放调整
这个控制图的旋转
这两个选项是调整高度,宽度,比如将高度取消勾选,调整宽度,则可使点密度降低,稀疏一点
中间那些,则是各种排列方式,排成纵向或者横向,可用自行摸索
网上有很多精美的图和教程,我这边做一个简单的分享
最后完成图展示~还可以进行更多设置,变得更漂亮