什么是 Cytoscape?

Cytoscape 是一个开源软件平台,用于可视化分子相互作用网络和生物通路,并将这些网络与注释、基因表达谱及其他状态数据进行整合。尽管 Cytoscape 最初是为生物学研究而设计的,但现在它已成为一个用于复杂网络分析和可视化的通用平台。Cytoscape 核心发行版提供了一套基础功能,用于数据集成、分析和可视化。更多功能以应用程序(Apps)(以前称为插件)的形式提供。这些应用程序可用于网络和分子谱分析、新布局、额外的文件格式支持、脚本编写以及与数据库的连接。任何人都可以使用基于 Java™ 技术的 Cytoscape 开放 API 来开发这些应用程序,我们鼓励社区共同开发。大多数应用程序都可以从 Cytoscape 应用商店免费获取。

Cytoscape 系列

Cytoscape 3

Cytoscape 3 是具有模块化架构的 Cytoscape 主流版本。它专为长期可维护性而设计,并取代了 2.x 系列。这是一个基于 Java 的桌面应用程序,旨在进行大规模网络分析和可视化。此版本将发布多项新功能,包括全新的用户界面、高级可视化功能、无头(命令行)发行版、RESTful API 以及对多种渲染引擎的支持。截至 2016 年 5 月,从 Cytoscape 2.x 到 3.x 的过渡已经完成,2.x 版本不再受支持。如果您确实需要仅适用于 2.x 的插件,可以使用 Cytoscape 2.8.3,但在其他情况下,请使用最新的 Cytoscape 3.x 系列。

请阅读 路线图页面以了解更多信息。

Cytoscape 3.5 桌面版

Cytoscape.js

Cytoscape.jsCytoscape Web 的继任者。Cytoscape.js 是一个用于网络可视化和分析的 JavaScript 库不是一个完整的 Web 应用程序。Cytoscape 3 和 Cytoscape.js 共享设计层面的概念(如视觉样式),但它们的代码库完全独立。它旨在成为 HTML5 时代复杂数据可视化 Web 应用程序的构建模块。Cytoscape 核心开发团队正在努力提高 Cytoscape 3 和 Cytoscape.js 之间的互操作性。从 Cytoscape 3.2 开始,用户可以将网络可视化导出为使用 Cytoscape.js 的交互式 Web 应用程序。

此背景由 Cytoscape.js 渲染

Cytoscape 2

Cytoscape 2.x 是 Cytoscape 的旧版本。此版本目前已停止支持。核心开发人员将不再添加新功能,并且可能很难获得针对 2.x 特定问题的解答。除非您确实需要使用仅适用于 2.x 系列的插件,否则请不要使用此版本。

哪一个适合我?

  • 普通用户、一般用户和高级用户: 请使用 Cytoscape v3.x —— v2.x 已停止支持。如果您过去使用过 v2.x 并且依赖于应用商店中尚未作为 v3.x 应用程序支持的插件,请使用 v2.x —— 并请持续关注应用商店是否有更新。
  • 应用程序开发人员: 请将您的 2.x 应用程序移植到 3.x 系列。我们建议使用 3.x 进行新插件开发,因为 2.x 已停止支持。3.x API 对于开发新应用程序已经足够稳定,但如果您发现任何设计缺陷或错误,请告知我们
  • Web 应用程序开发人员: 您可以使用 cytoscape.js 作为您 Web 应用程序的网络数据可视化引擎。它是一个纯 JavaScript 库,Web 浏览器不需要任何插件。从长远来看,该库及其他服务器端应用程序将取代 Java Web Start 版本的 Cytoscape。

Cytoscape 3 核心功能

支持多种标准

Cytoscape 支持多种标准的网络和注释文件格式,包括:SIF(简单相互作用格式)、GMLXGMMLBioPAXPSI-MIGraphMLKGML (KEGG XML)SBMLOBO基因关联 (Gene Association)。同时也支持分隔符文本文件和 MS Excel™ 工作簿,您可以导入由其他应用程序或电子表格程序生成的数据文件,例如表达谱或 GO 注释。利用此功能,您可以加载和保存节点、边和网络上的任意属性。例如,为您的蛋白质输入一组自定义注释术语,或为您的蛋白质-蛋白质相互作用创建一组置信度值。

公共数据库客户端

Cytoscape 可作为 Web 服务客户端运行。这意味着 Cytoscape 可以直接连接到外部公共数据库并导入网络和注释数据。目前支持 Pathway CommonsIntActBioMartNCBI Entrez Gene。我们正在持续开发针对主流数据库的新服务客户端。

互操作性

由于 Cytoscape 支持导入/导出标准文件格式,您可以轻松将 Cytoscape 整合到您的工作流程中。例如,如果您有由 igraphBioconductor 生成的网络数据,Cytoscape 可以将该文件作为文本表加载,并将其导出为 PSI-MI 格式,以便供其他生物信息学工具或您自己的应用程序/脚本使用。

从 3.3 版本开始,Cytoscape 支持 RESTful API 以实现程序化访问。您可以使用您选择的编程语言来访问 Cytoscape 的核心功能,例如创建网络、应用布局或导出图像。

会话文件

您可以一键保存工作。所有的设置、数据文件和可视化效果都被打包在一个会话文件中,称为Cytoscape 会话 (.cys) 文件。Cytoscape 会话文件包括网络、属性(节点/边/网络)、桌面状态(选定/隐藏的节点和边、窗口大小)、属性设置、部分插件状态和视觉样式。

布局

以二维方式布置网络。提供多种布局算法,包括循环布局、树状布局、力导向布局、边权重布局和 yFiles 有机布局。您还可以使用类似于其他图形应用程序用户界面的手动布局工具。

图像导出

您可以将网络导出为出版级质量的图像。支持 PDF、PS、SVG、PNG、JPEG 和 BMP 文件。矢量图像(PDF 和 PS)可以使用 Adobe Illustrator 等其他应用程序进行修改以进行进一步美化。

VizMapper (视觉映射器)

使用强大的 视觉样式 (VisualStyles) 自定义网络数据展示。在网络上查看基因表达比率和 p 值的叠加效果。表达数据可以根据用户可配置的颜色和可视化方案映射到节点颜色、标签、边框厚度或边框颜色等。

筛选器

筛选网络以根据当前数据选择节点和/或相互作用的子集。例如,用户可以选择参与了阈值数量相互作用的节点、共享特定 GO 注释的节点,或者根据随基因表达数据加载的 p 值在一种或多种条件下表达水平发生显著变化的节点。您可以从筛选结果中创建新网络。

搜索

搜索 窗口中搜索目标节点和边。支持使用 Lucene 语法进行任意复杂的查询。

浏览

放大/缩小和平移以浏览网络。使用网络管理器轻松组织多个网络,这种结构可以保存在会话文件中。使用鸟瞰图轻松导航大型网络。通过高效的渲染引擎,可以轻松导航大型网络(100,000 个以上的节点和边)。

查找模块/聚类

查找活跃子网络/通路模块。网络会根据基因表达数据进行筛选,以识别连接的相互作用集,即相互作用子网络,其基因表现出特别高水平的差异表达。每个子网络中包含的相互作用为控制所观察到的表达变化的调控和信号传导相互作用提供了假设。在加载到 Cytoscape 的任何网络中查找聚类(高度互连的区域)。根据网络的类型,聚类的含义可能不同。例如,蛋白质-蛋白质相互作用网络中的聚类已被证明是蛋白质复合体和通路的一部分。蛋白质相似性网络中的聚类代表蛋白质家族。

应用程序管理器和应用商店

应用程序可用于网络和分子谱分析。Cytoscape 是用 Java 编写的软件,您可以通过编写 Java 代码来编写自己的数据分析、导入和可视化应用程序。更多应用程序可在 Cytoscape 应用商店中找到。您可以从应用程序管理器一键安装大多数应用程序,也可以直接从应用商店安装(这是 Cytoscape 3 的功能)。

导出到 Web

Cytoscape 3 可以根据您的 Cytoscape 会话使用 Cytoscape.js 生成一个 Web 应用程序。此外,您可以轻松地将网络导出为 JSON 文件,并使用 cyNetShare 等外部 Web 应用程序与您的协作者共享。

多语言

您可以在数据文件中使用您的母语。Cytoscape 中的大多数功能支持除英语以外的语言,包括使用双字节字符的东亚语言。