about projects people publications resources resources visit us visit us search search

Quick Links

Current Apps (3.x)

Typographic Conventions

Mouse button
Dialog button
Keyboard button
Menu item
Dialog label
UCSF RBVI Cytoscape Plugins

scNetViz: Cytoscape networks for scRNA-seq analysis

scNetViz is a Cytoscape3 app for identifying differentially expressed genes from single-cell RNA sequencing data and displaying networks of the corresponding proteins for further analysis. It works with stringApp, the enhancedGraphics app, cyBrowser, and cyPlot to provide the following:


  1. Installation
  2. Menus and Input Files
  3. Experiment Table
  4. Differential Expression Analysis
  5. Loading Protein Networks
  6. Results Panel


In this rapid stage of development, installation is by downloading the scNetViz jar file (as well as those for cyBrowser, cyPlot, and stringApp) from GitHub and then installing each app from a file using the App Manager (Apps→App Manager). It is not necessary to restart Cytoscape once the apps are installed.

Menus and Input Files

scNetViz adds entries to the Cytoscape main Apps menu:

To browse and load an experiment from the Single Cell Expression Atlas:
Choose Apps→scNetViz→Browse Single Cell Expression Atlas from the menu or click the icon in the Cytoscape toolbar. For each dataset, the Single Cell Expression Atlas Browser shows accession number, deposition date, a brief description, the number of assays (approximately the number of cells), and other information. Clicking a column header sorts by that column.

Clicking a row to highlight it chooses an experiment.

Whether the Double-Click Action (the result of double-clicking a row in the experiment browser) should be View Data or Create Networks is specified in the settings, along with the default parameters for differential expression analysis and loading networks. The initial or “factory” default is for double-clicking to launch analysis and network creation.

The Settings dialog can be shown by choosing Apps→scNetViz→Settings from the main menu or by clicking the “gear” icon near the upper right corner of the Single Cell Expression Atlas Browser or any experiment table.

To load an experiment from file:
Choose Apps→scNetViz→Import Experiment from File from the menu, then browse to locate and open a zip file of the three MatrixMarket files comprising a normalized scRNAseq quantification dataset. It is necessary to enter the species name to enable fetching networks for the corresponding proteins.
To read in additional categories for a previously loaded experiment:
Choose Apps→scNetViz→Add Category to an Experiment from the menu or click the Import Category or Add Category button in an existing experiment table. The file can be CSV or TSV, with categories and cells as rows and columns or vice versa. If the latter (if the categories are columns), the File needs to be rotated option should be checked on. The number of header lines and the data type should be indicated.

Reasons to add a category are to define groupings for differential expression analysis, and/or to add information that can be viewed and sorted in the Categories tab of the experiment table.

Experiment Table

The experiment table contains all of the information loaded for an experiment, as well as analysis results. It has three tabbed sections:

The table for a previously loaded experiment can be shown by choosing Apps→scNetViz→Show Experiment Tables from the menu.

In any plot, with the magnifying-glass icon chosen (initial default), click-dragging to select a rectangle automatically enlarges that region. Clicking the house icon resets to showing the whole plot.

Differential Expression Analysis

In the Categories tab of the experiment table, each row defines a category or grouping that could be used for differential expression (DE) analysis. Cutoffs indicate which genes should be included, with factory defaults:

The values can be edited directly, and defaults (the values shown initially) adjusted in the settings. Genes not meeting the criteria will still be listed in the results, but without significance values.

The default grouping (category) for analysis is the clustering with sel.K value true, if any, or else the first clustering listed. A different category can be chosen instead by clicking its row. Clicking the Calculate Diff Exp button performs the analysis with the current settings. Not all cells may be assigned to a cluster, and more generally, some cells may lack a label (may not be assigned to a group) within the chosen category; these cells are included in “all others” comparisons.

Expression is compared between each group and the set of all other groups in that category. Cutoffs are used to exclude genes from the calculation. By default, if the absolute magnitude of the log2 fold change (ratio of expression levels for the two sets of cells) is less than 0.5 or the gene is detected in less than 0.1 of either set of cells, that gene is omitted from the calculation. These cutoff values can be changed by the user.

In the DiffExp tab of the experiment table, result columns for each group (e.g. cluster) include:

The menus under Comparison can be used to show the results for different clusterings (different values of k) or categories.

Buttons on the right:

Loading Protein Networks

Protein networks are fetched from the STRING database, either automatically or when the Create Network button in the DiffExp tab of the experiment table is clicked.

Network analysis cutoffs indicate which proteins should be loaded as a network for each comparison in the differential expression analysis. Factory defaults are to include only the proteins for genes with:

Alternatively, if a number is entered for the Top n genes, this will supersede the other cutoffs and give the specified number of top hits by p-value rank. The Positive only option indicates whether only genes with positive log2FC values (higher expression than in the comparison set) should be included (initial default off, meaning to include genes with both higher and lower expression than the comparison set). The values can be edited directly, and defaults (the values shown initially) adjusted in the settings, along with the Maximum Genes for generating a network (initial default 500). Networks are generated according to the current criteria when the Create Network button is clicked.

Assuming some genes meet the criteria for each comparison, the number of networks loaded will be the same as the number of groups in the category, plus one network that is the union of the others. Network node coloring is by log2 fold change, from red for most positive to blue for most negative, as in the heatmap.

Results Panel

The Results Panel within the main Cytoscape window includes options similar to those appearing elsewhere in scNetViz, plus controls for performing enrichment analyses of terms (annotations) in the network vs. the whole genome of the organism. The panel can be shown by choosing Apps→scNetViz→Show Results Panel from the menu.

To View data and plots: To Reanalyze: To Get Enrichment of terms (annotations from Gene Ontology and other sources) within a network relative to the organism's genome, specify which proteins to include:

Clicking Retrieve Table performs the enrichment analysis and loads the STRING Enrichment table of results, with redundancies removed. The terms found to be enriched for a network are displayed as colored segments (a “donut chart”) encircling the corresponding nodes, with color-coding as shown in the table.

Enrichment analysis is described in more detail in the stringApp paper:

Cytoscape stringApp: Network analysis and visualization of proteomics data. Doncheva NT, Morris J, Gorodkin J, Jensen LJ. J Proteome Res. 2018 Nov 19. doi: 10.1021/acs.jproteome.8b00702.

Last updated on January 28, 2019

About RBVI | Projects | People | Publications | Resources | Visit Us

Copyright 2018 Regents of the University of California. All rights reserved.