cytoscape用什么数据作图
cytoscape用什么数据作图,答案是 Cytoscape 主要用「节点表(node table)」和「边表(edge table)」两类表格数据来作图,也可以直接导入已经写好的网络文件(如 SIF、XGMML、GraphML 等)。简单说,你要先准备好一张描述「谁和谁相连」的边表,再准备一张描述「每个点是什么」的节点表,然后通过导入功能把这两张表变成网络图。如果只做简单关系图,可以只给边表,Cytoscape 会自动补出节点;如果点要带名称、分组、颜色或大小等属性,就再补一张节点表。
- 准备边表:定义谁和谁相连
边表是作图的骨架,至少包含两列,一般命名为 source 和 target,分别表示连线的起点和终点。例如第一行写 A 和 B,表示节点 A 与节点 B 之间有一条边。如果边还有方向,可以再加一列 interaction 或 type,填 activation、inhibition 这类关系词;如果边有权重,可以再加一列 weight,填数字。边表通常是纯文本表格,用制表符或逗号分隔,保存为 txt 或 csv 都可以。没有边表,Cytoscape 就画不出连线,所以它是必备数据。 - 准备节点表:定义每个点是什么
节点表不是必须,但想让图有区分度就要准备。节点表至少有一列是节点名称,且要和边表里出现的 source、target 名称完全一致,大小写、空格都要对上。其余列可以放分组、类型、颜色、大小、表达量等属性。例如一列叫 group,填 A 组或 B 组;一列叫 score,填数字用于控制节点大小。导入后可以在样式面板里把这些列映射成颜色、形状或尺寸。如果只导入边表,Cytoscape 会自动创建同名节点,但节点没有额外属性可映射。 - 直接导入网络文件:不想拆两张表时用
如果你已经有现成的网络文件,也可以不拆节点表和边表,直接导入。常见格式包括 SIF、XGMML、GraphML、GML 等。SIF 格式每行写「节点1 关系 节点2」,适合快速查看简单网络;GraphML 和 XGMML 能同时携带节点属性和边属性,适合从其他软件导出的完整网络。导入时在菜单里选择从文件导入网络,选中对应文件即可。注意不同格式对属性列的支持不一样,导入后最好在表格面板里检查一遍列名和数据是否完整。 - 从表格导入并生成网络的检查清单
导入表格前先检查三点:一是边表的 source 和 target 两列名称是否写对,有没有多余空格;二是节点表的名称列是否和边表完全一致,否则会出现重复节点;三是表格里有没有合并单元格或空行,这些会干扰解析。如果导入后发现节点数量比预期多,多半是名称不一致造成的。可以在表格面板里搜索某个节点名,看它是不是出现了两次。修改后重新导入,旧的网络可以先删掉或新建一个会话。 - 导入之后如何把数据变成图
数据导入成功后,Cytoscape 会自动生成网络视图。此时所有节点通常都是同一个默认形状和颜色,需要用样式面板把数据列映射成视觉属性。比如选择节点填充颜色,映射到 group 列,不同组就会显示不同颜色;选择节点大小,映射到 score 列,数值大的节点就会更大。边也可以映射颜色或线型。布局方面,可以用布局菜单选择力导向、环形或层次布局,让网络更清晰。最后通过导出功能保存为图片或网络文件。 - 常见数据格式对照与选择建议
如果你有 Excel 表格,先另存为 csv 或 txt,再分别整理成边表和节点表,这是最通用的做法。如果是从 R 或 Python 生成的网络,可以导出成 GraphML 或边表加节点表。如果只是手画几条关系,直接用 txt 写 SIF 最快。需要保留复杂属性时优先选 GraphML 或 XGMML。无论用哪种数据,核心都是:边表决定连线,节点表决定外观属性,网络文件可以两者合一。按这个思路准备数据,Cytoscape 就能正常作图。
软件页面:Cytoscape。