

Existing Cytoscape apps to control Cytoscape from scripts. We created the cyREST Cytoscape app to enable automated access to the Cytoscape network and visualization models directly from within these tools, thereby exposing Cytoscape visualization, analysis, and publishing features in complex, varied, and reproducible bioinformatic workflows as shown in Figure 1. Consequently, this integration has been labor intensive, inconvenient, and often unrepeatable, particularly as the complexity of analysis and visualization processing increases. To date, combining these tools with Cytoscape has seen only limited success, largely because of the limitations of Cytoscape’s automation interfaces and its point-and-click user interface. Inasmuch as these tools address the data collection and analysis portions of typical bioinformatic workflows, Cytoscape complements them by addressing visualization, additional analysis, and network publication. At the same time, bioinformaticians have embraced a class of highly flexible tools consisting of fully fledged programming environments (e.g., IPython/Jupyter Notebook 2, RStudio, and MATLAB) coupled with programming languages (e.g., Python and R) and highly capable and flexible bioinformatic libraries.

However, even as Cytoscape 1 is well positioned to handle customized *omics workflows, bioinformaticians’ need to quickly and efficiently create complex, varied, and repeatable workflows exceeds the capabilities of Cytoscape’s existing automation features. cyREST is available in the Cytoscape app store () where it has been downloaded over 1900 times since its release in late 2014.īecause of its robust network analysis and visualization capabilities coupled with its vibrant user and developer community, Cytoscape 3 has become a tool of choice for studying large network-oriented *omics data sets on common workstations and for publishing results. We describe cyREST’s API and overall construction, and present Python- and R-based examples that illustrate how Cytoscape can be integrated into large scale data analysis pipelines. Together, they improve workflow reproducibility and researcher productivity by enabling popular languages (e.g., Python and R, JavaScript, and C#) and tools (e.g., IPython/Jupyter Notebook and RStudio) to directly define and query networks, and perform network analysis, layouts and renderings. In this paper, we present the new cyREST Cytoscape app and accompanying harmonization libraries. Consequently, Cytoscape-oriented tasks are laborious and often error prone, especially with multistep protocols involving many networks. Cytoscape is a critical workflow component for executing network visualization, analysis, and publishing tasks, but it can be operated only manually via a point-and-click user interface. As bioinformatic workflows become increasingly complex and involve multiple specialized tools, so does the difficulty of reliably reproducing those workflows.
