Skip to content
Kristina Hanspers edited this page Dec 5, 2019 · 64 revisions

Getting Started

Getting Started with Automation in R
Step-wise installation instructions leading to RCy3 vignettes

Additional recommended resources for getting started include Understanding Automation and the FAQ.

For Script Writers

R notebooks and scripts Python notebooks JavaScript
R noteboooks and scripts Python notebooks JavaScript
Collection of sample scripts using the RCy3 package Collection of scripts using py2cytoscape utility A basic sample script to automate a Cytoscape workflow using cyRest and node.js

For App Developers

Java Testing Best practices Web
Java Testing Best practices Web
Automation in Java App Development Using Automation to Test your app Best practices How to add Automation to web page

Notebooks and Scripts

R Notebooks and scripts

Binder Launch RStudio online using the Binder badge above. Then follow these steps:

  1. In RStudio, go to the Terminal tab and run this command to launch Cytoscape:
xvfb-run bash ~/cytoscape-unix-3.7.2/cytoscape.sh
  1. Wait ~15 seconds for Cytoscape to launch. You will see a karaf prompt in the Terminal when complete (ignore messages about OpenCL). You will not see the Cytoscape desktop, as it is running in the background. You can see status messages in the Console.
  2. Open any of the Rmd files in the working directory of RStudio. Feel free to run or modify any of the provided scripts, but note that your changes will not be saved. Binder provides only a temporary online space to try out Cytoscape in R.

Or, visit the collection of Cytoscape Rmd Notebooks to view HTML versions or download Rmd files for local usage. Brief descriptions and links are also provided below...

Training Vignettes

Overview of RCy3
An R Markdown Vignette introducing RCy3
Importing Data
An R Markdown Vignette describing data import
Network functions and visualization
Network functions and visualization
Identifier Mapping
Translate identifiers from one database to another using idmapper
Cytoscape and NDEx
Cytoscape and NDEx

Workshops and Use Cases

Cytoscape Automation with RCy3
Introduction to using Bioconductor package RCy3 to directly communicate with Cytoscape from R. Three use cases are demonstrated including querying existing interaction databases with a set of genes to create network, creating a correlation network using aMatReader, and a basic enrichment analysis. Workshop given at BIOC2018.
Cancer Networks and Data
An R Markdown Vignette that encapsulates a bioinformatics analysis of TCGA data on breast and ovarian cancer in the context of STRING networks
AP-MS Network Analysis
Describes how to use data from an affinity purification-mass spectrometry experiment to generate relevant interaction networks, enriching the networks with information from public resources, analyzing the networks and creating effective visualizations.

External Links

Extending DEG Networks with CyTargetLinker
Extending a network of differentially expressed genes with chemical interactions from WikiPathways using the CyTargetLinker app for Cytoscape
Extending Disease Networks with CyTargetLinker
Extending a Rett Syndrome network with checmical interactions and disease associations using the CyTargetLinker app for Cytoscape
Pathway Analysis with WikiPathways
Covers a wide range of analytical and visualization techniques involved in a typical pathway analysis. You will be performing functional enrichment analysis on a differential gene expression dataset that compares lung cancer biopses versus normal tissue. The enrichment analysis will be performed against Gene Ontology, as an introduction to the most common type of enrichment, commonly referred to as GO Analysis. This will serve as the foundation for more advanced enrichment analysis against a pathway database, which is called Pathway Analysis.

Python Notebooks

Binder Launch JupyterLab using the Binder badge above. Then follow these steps:

  1. In JupyterLab, go to the Terminal tab and run this command to launch Cytoscape:
xvfb-run bash ~/cytoscape-unix-3.7.2/cytoscape.sh
  1. Wait ~15 seconds for Cytoscape to launch. You will see a karaf prompt in the Terminal when complete (ignore messages about OpenCL). You will not see the Cytoscape desktop, as it is running in the background.
  2. Open any of the .ipynb files in the working directory of JuypterLab. Feel free to run or modify any of the provided scripts, but note that your changes will not be saved. Binder provides only a temporary online space to try out Cytoscape in Python.

Or, browse the links below to view Python notebooks as rendered by GitHub...

Advanced cancer networks and data
Python script representing a common bioinformatics workflow.
Network Assisted Genomic Analysis (NAGA)
Re-prioritizes significant single nucleotide polymorphisms (SNPs) to genes using network diffusion methods including random walk and heat diffusion.
Advanced View API
Sample Jupyter Notebook to demonstrate how users can manipulate Cytoscape network views directly from Python code
Copycat layout via CyRest
Python notebook with instructions and sample code for calling copycat layout through Cytoscape CyREST endpoints
eXamine Automation Tutorial 1
This case study demonstrates how to use the REST API of eXamine to study an annotated module in Cytoscape
eXamine Automation Tutorial 2
This case study demonstrates how to use the REST API of eXamine to study a small, annotated graph in Cytoscape
Automation of the PathLinker App paper Lovastatin Analysis
Automation of the PathLinker App paper Lovastatin Analysis
Use Case for "Automating the PathLinker App for Cytoscape" - F1000, 2018
Use Case for "Automating the PathLinker App for Cytoscape" - F1000, 2018
Cytoscape Reactome FI Example
This example demonstrates a workflow using ReactomeFIViz CyREST API to perform a comparison pathway and network analysis for TCGA BRCA (breast invasive carcinoma) and OV (ovarian serous cystadenocarcinoma) mutation data
Basic features demo
Basic features demo
Basic fundamentals
Basic fundamentals

JavaScript

JavaScript basic workflow
A basic sample script to automate a Cytoscape workflow using cyRest and node.js

For App Developers

Java

Adding Automation to Existing Apps

How to add Automation to an App you already maintain

Building CI Responses

How to build CI Responses for your Automation Functions.

Exercising Your App

How to access an app's automation features from clients, web browsers, and the Swagger UI

Sample Apps

A collection of sample Apps that implement Cytoscape Automation

Testing

Using Scripting to Test Your App

How to write integration tests in a scripting language to test your App

Best Practices

Cytoscape Function Best Practices

... to follow when implementing Cytoscape Functions via JAX-RS

Swagger Best Practices

... to follow when documenting automation functions

Cytoscape Command Best Practices

... to follow when implementing Cytoscape Commands

Web developers

Adding Automation to Web Pages

How to add Automation to web page

Join the Community

Sharing

Please feel free to use, share, copy or adapt any of the materials you find here. They are all implicitly published under the CC0 waiver for maximum reuse potential.

Questions

Contact Cytoscape Help Desk with any questions about Cytoscape usage.

Issues

To report any issues with the tutorial content, click "Issues" above and open a new issue.

Note to repository maintainers: Please *DO NOT* move this page ... the Cytoscape Automation paper refers directly to it.

You can’t perform that action at this time.