5. 创建网络¶
在 Cytoscape 中创建网络有 4 种不同的方法:
导入预先存在的、固定格式的网络文件。
导入预先存在的、无格式的文本文件或 Excel 文件。
从公共数据库导入数据。
创建一个空网络并手动添加节点和边。
5.1. 导入固定格式的网络文件¶
网络文件可以使用 支持的网络格式 一节中描述的任何格式。网络通过 文件 (File) → 导入 (Import) 导入到 Cytoscape 中。网络文件可以直接位于本地计算机上,也可以位于远程计算机上(在这种情况下,将使用 URL 引用)。
从本地计算机加载网络¶
要从本地文件加载网络,您可以选择 文件 (File) → 导入 (Import) → 来自文件的网络… (Network from File…) 或点击工具栏上的
。在文件选择器对话框中选择正确的文件,然后按 打开 (Open)。Cytoscape 的 sampleData 文件夹中包含了一些不同类型的示例网络文件。
选择网络文件后,会弹出一个对话框。在这里,您可以选择为新网络创建一个新的网络集合,或者将新网络加载到现有的网络集合中。选择后者时,请确保选择正确的映射列,以便将新网络映射到现有的网络集合。

Cytoscape 中的网络集合用于组织相关的网络,例如子网络。集合中的网络通过 shared name(共享名称)节点属性进行链接;导入时会添加 shared name 属性。当您想要更改集合中所有网络中的节点名称时,此属性非常有用。
或者,您可以直接将网络文件从桌面拖放到 控制面板 (Control Panel) 的 网络 (Network) 选项卡中,而不是从菜单选项中选择文件。
SIF、GML 和 XGMML 格式的网络文件也可以使用 -N 选项直接从命令行加载。
从远程计算机加载网络(URL 导入)¶
要从远程文件加载网络,请选择 文件 (File) → 导入 (Import) → 来自 URL 的网络… (Network from URL…)。在导入网络对话框中,手动或使用 URL 书签插入相应的 URL。点击文本字段右侧的箭头可以访问已添加书签的 URL(有关书签的更多详细信息,请参阅 首选项 (Preferences) 中的书签管理器)。此外,您还可以将网络浏览器中的链接拖放到 URL 文本框中。指定 URL 后,点击“确定”按钮加载网络。

对于存储在云存储中的网络文件,默认 URL 在 Cytoscape 中并不总是有效,需要转换后才能使用。以下是一些常见云存储选项的默认 URL 转换示例:
Dropbox¶
默认 URL: https://www.dropbox.com/s/077w3i4500dxrsm/galFiltered.sif?dl=0
Cytoscape URL: https://dl.dropboxusercontent.com/s/077w3i4500dxrsm/galFiltered.sif
说明:将 www.dropbox.com 替换为 dl.dropboxusercontent.com,并删除 ?dl=0
Google Drive¶
针对小于 100K 的文件
默认: https://drive.google.com/file/d/1hHO4ErMx7HMo-_sRV_PfeoM3lnn6ZDLw/view?usp=sharing
Cytoscape URL: https://drive.google.com/uc?export=download&id=1hHO4ErMx7HMo-_sRV_PfeoM3lnn6ZDLw
说明:将 file/d/ 替换为 uc?export=download&id=,并删除 /view?usp=sharing
您可能会看到一个中间导入窗口(下文有详细描述),您可能需要在其中更改分隔符并定义源、目标和交互。对于此特定示例,请在 高级 (Advanced) 中将 分隔符 (Delimiter) 更改为 空格 (Space),取消选中 使用第一行作为列名 (Use first line as column names),并将第一列设为 源 (Source),第三列设为 目标 (Target),第二列设为 交互类型 (Interaction Type)。
GitHub¶
默认 URL: https://github.com/bdemchak/cytoscape-jupyter/blob/main/sanity-test/data/galFiltered.sif
Cytoscape URL: https://raw.githubusercontent.com/bdemchak/cytoscape-jupyter/main/sanity-test/data/galFiltered.sif
说明:将 github.com 替换为 raw.githubusercontent.com,并删除 /blob
网络导入的另一个问题是防火墙的存在,这可能会影响计算机可以访问哪些文件。为了解决这个问题,Cytoscape 支持使用代理服务器。要配置代理服务器,请转到 编辑 (Edit) → 首选项 (Preferences) → 代理设置… (Proxy Settings…)。这将在 首选项 (Preferences) 一节中进一步描述。
5.2. 从无格式表格文件导入网络¶
Cytoscape 支持使用 文件 (File) → 导入 (Import) → 来自文件的网络… (Network from File…) 从带分隔符的文本文件和 Excel 工作簿导入网络。交互式 GUI 允许用户为指定文件指定解析选项。该屏幕提供了一个预览,显示了在当前配置下文件将如何被解析。随着配置的更改,预览会自动更新。除了指定文件的解析方式外,用户还必须选择代表源节点和目标节点的列,以及一个可选的边交互类型。有关详细说明,请参阅下方的“基本操作”。

支持的文件类型¶
导入功能支持带分隔符的文本文件和 Microsoft Excel 工作簿。对于具有多个工作表的工作簿,每次可以选择一个工作表进行导入。以下是示例表格文件:
| 源 (source) | 目标 (target) | 交互 (interaction) | 布尔数据 (boolean data) | 字符串数据 (string data) | 浮点数据 (floating point data) |
|---|---|---|---|---|---|
| YJR022W | YNR053C | pp | TRUE | abcd12371 | 1.2344543 |
| YER116C | YDL013W | pp | TRUE | abcd12372 | 1.2344543 |
| YNL307C | YAL038W | pp | FALSE | abcd12373 | 1.2344543 |
| YNL216W | YCR012W | pd | TRUE | abcd12374 | 1.2344543 |
| YNL216W | YGR254W | pd | TRUE | abcd12375 | 1.2344543 |
用于创建带边的网络时,网络表格文件应至少包含两列。如果文件只有一列,则创建的网络将不包含任何边。交互类型在此格式中是可选的。因此,最简网络表格如下所示:
| 源 (source) | 目标 (target) |
|---|---|
| YJR022W | YNR053C |
| YER116C | YDL013W |
| YNL307C | YAL038W |
| YNL216W | YCR012W |
| YNL216W | YGR254W |
网络表格文件中的一行代表一条边及其边数据列。这意味着网络文件被视为网络数据和边列数据的组合。表格可能包含不打算用作边数据的列。在这种情况下,您可以点击预览窗口中的列标题来选择不导入这些列。当导入如下数据表 (1) 时,此功能非常有用。

此数据文件是一个制表符分隔的文本文件,包含网络数据(交互)、边数据和节点数据。要从此表中导入网络和边数据,请选择 Unique ID A 作为源,Unique ID B 作为目标,Interactor types 作为交互类型。接下来,关闭用于节点数据的列(Alt ID A、species B 等)。其他列可以作为边数据导入。
网络导入功能无法导入节点表格列 - 仅能导入边表格列。要从此表中导入节点表格列,请参阅本手册的 节点和边列数据 一节。
注意 (1):此数据改编自 Andrew Garrow、Yeyejide Adeleye 和 Guy Warner 的 A merged human interactome 数据集(Unilever, Safety and Environmental Assurance Center, 2006 年 10 月 12 日)。
基本操作¶
要从文本/Excel 表格导入网络,请遵循以下步骤:
选择 文件 (File) → 导入 (Import) → 来自文件的网络… (Network from File…) 或点击工具栏上的
。在文件选择器对话框中选择一个表格文件。
通过指定哪些数据列包含 源交互 (Source Interaction)、目标交互 (Target Interaction) 和 交互类型 (Interaction Type) 来定义交互参数。点击任何列标题右侧的箭头将调出用于选择源、交互和目标的界面。

(可选) 如果适用,定义边表格列。网络表格文件除了网络数据外,还可以包含边表格列。
启用/禁用表格列:您可以通过在列编辑器中选择
符号来启用/禁用列数据。
更改列名和数据类型:您还可以在列编辑器中修改列名和数据类型。有关更多详细信息,请参阅下方的 修改列名/类型 (Modify Column Name/Type)。
点击 确定 (OK) 按钮。
导入无边节点列表¶
表格导入功能支持无边节点列表。如果您仅选择源列,它将创建一个没有交互的网络。此功能在使用某些 Web 服务客户端提供的节点扩展功能时非常有用。请阅读 从外部数据库导入网络 一节以了解更多详细信息。
高级选项¶

您可以通过点击主导入界面中的 高级选项 (Advanced Options) 按钮来选择几个选项。
分隔符 (Delimiter):您可以为文本表格选择多个分隔符。默认情况下,选择 Tab 和 Space 作为分隔符。
默认交互 (Default Interaction)
将第一行作为列名 (Transfer first line as column names):选择此选项将使所有边列根据该列中的第一个数据条目命名。
开始导入行 (Start Import Row):设置从表格的哪一行开始导入数据。例如,如果您想跳过文件中的前 3 行,请将此选项设置为 4。
忽略以...开头的行 (Ignore lines starting with):以该字符开头的行将不会被导入。此选项可用于跳过文本文件中的注释行。
修改列名/类型¶
在 从表格导入网络 (Import Network from Table) 界面中,您可以通过点击任何列标题来更改列的名称和数据类型。

可以在此处修改列名和数据类型。
修改列名 (Modify Column Name) - 输入新的列名。
修改列数据类型 (Modify Column Data Type) - 支持以下列数据类型:
字符串 (String)
布尔值 (Boolean) (True/False)
整数 (Integer)
浮点数 (Floating Point)
列表 (List of) (String/Boolean/Integer/Floating Point)
Cytoscape 具有基本的检测功能,可根据条目自动建议列数据类型。这可以通过从提供的单选按钮中选择适当的数据类型来覆盖。对于列表,必须指定一个全局分隔符(即,表格中的所有单元格必须使用相同的分隔符)。
5.3. 从公共数据库导入网络¶
Cytoscape 允许您从公共数据库导入网络。用户可以通过 文件 (File) → 导入 (Import) → 来自公共数据库的网络… (Network from Public Databases…) 使用此功能访问各种数据库。搜索栏 (Search bar) 也位于 控制面板 (Control Panel) 中 网络 (Network) 面板的顶部。通过搜索栏,您可以直接访问多个公共数据库。

什么是 Web 服务?¶
Web 服务是一种标准化的、平台无关的机制,供计算机通过互联网进行交互。如今,许多主要的生物数据库都通过 Web 服务 API 发布其数据。
生物 Web 服务列表: https://incubator.apache.org/projects/taverna.html
EBI 的 Web 服务: https://www.ebi.ac.uk/Tools/common/tools/help/
Cytoscape 核心开发团队使用此框架开发了几个 Web 服务客户端。Cytoscape 支持许多 Web 服务,包括:
PSICQUIC:生物交互数据集的标准 Web 服务。与 PSICQUIC 兼容的数据库完整列表可在此查看。PSICQUIC 可通过 搜索栏 使用。
Pathway Commons:来自通路和网络资源的集成数据。支持资源的完整列表可在此查看。Pathway Commons 可通过 文件 (File) → 导入 (Import) → 网络 (Network) → 公共数据库… (Public Databases…) 使用。
STITCH 和 STRING:STITCH 是已知和预测的化学物质与蛋白质之间相互作用的数据库。STRING 是已知和预测的蛋白质-蛋白质相互作用的数据库。STITCH 和 STRING 可通过 搜索栏 以及 文件 (File) → 导入 (Import) → 网络 (Network) → 公共数据库… (Public Databases…) 使用。
NDEx:网络数据交换 (NDEx) 项目提供了一个开源框架,科学家和组织可以在此共享、存储、操作和发布生物网络知识。NDEx 可通过 搜索栏、文件 (File) → 导入 (Import) → 来自 NDEx 的网络… (Network from NDEx…) 以及工具栏中的 NDEx 按钮 使用。
示例:从 NDEx 检索网络¶
在 搜索栏 中,从下拉菜单中选择 NDEx 并输入一个或多个搜索词,例如 BRCA1。
点击 回车 (Enter) 开始搜索。
CyNDEx-2 查找网络 (Find Networks) 对话框窗口将打开并显示搜索结果。
默认情况下,结果按您提供的搜索词的相关性顺序返回;您可以通过点击列标题更改排序条件。
勾选结果表格顶部的 我的网络 (My Networks) 复选框以仅显示您拥有的结果(您必须拥有一个 NDEx 帐户和一个与 CyNDEx 浏览器关联的个人资料… 有关更多详细信息,请参阅 导出选项 一节)。
点击网络左侧的 黑色箭头图标 将其导入 Cytoscape 并可视化。加载完网络后,通过点击 关闭对话框 (Close Dialog) 按钮关闭窗口。

您也可以在搜索中使用 uuid: 选择器按 UUID 查找网络(例如,uuid:50e3dff7-133e-11e6-a039-06603eb7f303)。
与 NDEx 一样,CyNDEx-2 使用标准的 Lucene 语法 作为其网络搜索语言。有关其他信息,请参阅 在 NDEx 中搜索网络。有关 CyNDEx-2 的更多信息,请访问 CyNDEx-2 App Store 页面。
最后,也可以通过主 Cytoscape 工具栏 中的 NDEx 按钮访问 NDEx 导入和导出对话框,点击后将显示这两个选项。

5.4. 创建新网络或手动编辑网络¶
也可以创建一个新的空网络并手动添加节点和边。要创建一个空网络,请转到 文件 (File) → 新建网络 (New Network) → 空白 (Empty),然后通过右键点击网络画布或节点手动添加网络组件。您可以使用相同的过程编辑现有网络。
添加节点¶
要添加新节点,请右键点击网络视图面板上的空白处。从弹出菜单中选择 添加 (Add) → 节点 (Node) 项。

添加边¶
要添加边以连接节点,请右键点击源节点。从弹出菜单中选择 编辑 (Edit) → 添加边 (Add Edge)。接下来,点击目标节点。下图显示了在两个节点之间绘制边的两个步骤。您可以按 Esc 键中止绘图。您还可以选择两个或多个节点进行连接,并在右键菜单中选择 添加 (Add) → 添加连接选定节点的边 (Edges Connecting Selected Nodes),以创建连接所有选中节点的边。


您可以通过选择多个节点和边,然后选择 编辑 (Edit) → 剪切 (Cut) 来删除它们。您也可以在 编辑 (Edit) 菜单下的 编辑 (Edit) → 删除选定节点和边… (Delete Selected Nodes and Edges…) 中删除选定的节点和边。您可以通过 编辑 (Edit) → 撤销 (Undo) 恢复从网络中删除的任何节点和边。
节点分组¶
可以将任意数量的节点组合在一起,并显示为一个组节点或单独的节点。要创建组,请选中两个或多个节点,右键点击并选择 组 (Group) → 组选定节点 (Group Selected Nodes)。系统将提示您为组节点选择一个名称。一旦创建了组,您就可以使用右键菜单折叠或展开该组。您还可以通过双击组节点或其任何子节点来快速折叠/展开组以进行切换。
折叠的组

展开的组

组合节点的外观和行为取决于创建组时生效的 组设置 (group settings)。可以管理整个 Cytoscape 会话的设置(通过 编辑 (Edit) → 首选项 (Preferences) → 组首选项… (Group Preferences…))或特定组的设置(右键点击 首选项 (Preferences) → 组首选项… (Group Preferences…))。
添加网络注释¶
注释 (Annotations)(文本、图像或形状形式)可以通过右键点击画布上的任意位置并在 添加 (Add) 菜单中选择 注释 (Annotation) 选项之一来添加到网络画布中。您可以添加自己的图像、从形状库中选择或添加纯文本或带边框的文本。形状和文本是可自定义的,任何添加的注释都可以从右键上下文菜单中进行编辑。
