FunNetViz: a Cytoscape plug-in
Introductory remarks

FunNetViz is a Cytoscape plug-in that significantly facilitates the visualization and interpretation of FunNet’s1 "Functional analysis of transcriptional networks" output. FunNet2 is an integrative functional genomics tool designed for the analysis of transcriptional interaction networks. To this purpose, experimental gene expression data are enriched with the latest available knowledge about transcripts’ biological roles, stored in genomic annotation systems. The integration aims to improve the biological relevance of the identified co-expression modules and propose new centrality measures based not only on network topology, but also on the enriched biological knowledge.

Cytoscape3 is a widely used open-source platform that helps scientists visualize and integrate molecular interaction networks. The development of plug-ins is highly supported and helps extend Cytoscape’s core functionalities. Once a given analysis is completed, FunNet will provide a list of files (fig. 1 right) that contain co-expression and annotation networks as well as different attributes that will be used to visualize them. All files are stored in a compressed archive (fig. 1 left) that can be downloaded from the server. Then the resulting data need to be imported into Cytoscape to allow for further analyses and interpretation. Because the importation process is quite tedious and time consuming, we wrote FunNetViz to assist users. In fact, while the importation and the proper visualization of a single network usually requires over sixty clicks and takes three to four minutes, it can now be done almost instantly with FunNetViz with three clicks, even if the user has very little knowledge of Cytoscape.

archive and content file list
Fig. 1: FunNet result compressed archive (left) and the files and folders contained in it (right).

1 or

2Prifti et al. FunNet: an integrative tool for exploring transcriptional interactions. Bioinformatics (2008) vol. 24 (22) pp. 2636-8



FunNetViz can be downloaded from our server at along with an archive containing two example datasets analyzed with FunNet The first provides data from gene expression experiments performed in our lab to study subcutaneous adipose tissue (scAT) in obese and lean subjects4, while the second provides public data from yeast cell cycle5. In addition, the source code is made public under GNU General Public Licence conditions and can be downloaded at

4Henegar et al. Adipose tissue transcriptomic signature highlights the pathological relevance of extracellular matrix in human obesity. Genome Biology (2008) vol. 9 (1) pp. R14

2Gauthier et al. comprehensive multi-organism online database of cell-cycle experiments. Nucleic Acids Research (2008) vol. 36 (Database issue) pp. D854-9


FunNetViz version 1.0 and this tutorial are compatible with Cytoscape 2.6.3, which can be freely downloaded from the Cytoscape project website: If needed, download and install the Java version 6 Runtime Environment or higher from Once Java and Cytoscape are properly installed and functioning, place the FunNetViz.jar file into the local Cytoscape/plugins directory and start Cytoscape. FunNetViz as well as Cytoscape are written in java, thus they are platform-independent and can be run in Mac OS, Windows, Linux, etc.

Starting the plug-in

Start Cytoscape 2.6.3, and use the "Plugins" menu from the Cytoscape main window to launch FunNetViz as shown in fig. 2.

FunNetViz how to start
Fig. 2: Launch FunNetViz from Cytoscape Plugins menu.

When FunNetViz is selected from the menu, a new panel will be added to Cytoscape control panel area (fig. 3).

FunNetViz how to start
Fig. 3: FunNetViz control panel embedded in Cytoscape.
Using FunNetViz

Now that the plugin is installed and launched we can use it to load FunNet’s result networks. Browse and select the folder where the files from the result archive were extracted and hit OK. FunNetViz panel will update and show the annotation systems used previously during FunNet analysis. For more information on FunNet, please read the tutorial6.

FunNetViz is composed of 4 sections. The first gives the possibility to select the data folder, the second to select an annotation system to analyze, the third to select the type of network and the fourth the kind of centrality measure.

  1. Data location: we consider a folder containing FunNet’s result files as the working directory, meaning that this should be the folder selected in order to load the data. If the selected folder is not the right one, error messages will pop-up or otherwise the second section will be populated with the available annotation systems. You can download example data archives here7.
  2. Annotation systems: FunNet offers the possibility to select four annotation systems: GO Biological Process, GO Cellular Component, GO Molecular Function and KEGG. The same annotation systems that were selected during FunNet analysis will also appear in FunNetViz. The biological knowledge organized in these systems will be used in FunNet’s different algorithms and the resulting networks will be highly dependent on them.
  3. Network layer: two kinds of networks are computed and output form FunNet: a) co-expression and b) annotation networks. Co-expression networks are built by relating transcripts (i.e. nodes) with similar expression profiles (i.e. edges). Annotation networks are built by associating overrepresented annotations in relation to the co-expression network. Annotation networks give a global view of which transcripts are involved and how their functions are related to each other. This information is extracted from the annotation systems as well as from the gene expression data. The view of an annotation network can be tuned by filtering inter or intra-modular links.
  4. Centrality measures: it is of the highest interest for obvious reasons to have the possibility to predict important transcripts or annotations in networks of a given condition (e.g. obese vs. lean scAT). For this reason we implemented a number of centrality measures such as those based only on the topology of the network like the ‘betweenness centrality’ (i.e. number of shortest paths passing through a node) or ‘degree centrality’ (i.e. number of links entering and leaving a given node). We also implemented a new centrality measure called ‘functional centrality’, enriched with biological knowledge that is based on annotation propagation. This new measure will be sufficiently explained in another manuscript.

Once the different parameters are selected, hit the "Update" button to load the network. The network and its attributes are automatically loaded and visual effects depending on attributes are also automatically applied. If two sets of genes are analyzed in FunNet, for example up-regulated vs. down-regulated genes, the first gene-set will be colored in red and the second in green (fig. 4). If only one gene-set is used in the analysis, only a blue-sky color will paint the nodes. Transcripts (nodes) belonging to the same assigned8 functional module will have the same shape. The size of a node will reflect its relative importance within the network in relation to the selected centrality measure (fig. 5). Today’s version of FunNetViz has only two centrality measures (betweenness and degree centrality) for annotation networks (fig. 6) and three (betweenness, degree and functional centrality) for co-expression networks.

FunNetViz 2-list gene network
Fig. 4: Example of 2 gene-set co-expression network built with GO Cellular Component annotation system and visualized with functional centrality.
FunNetViz 1-list gene network
Fig. 5: Example of a single gene-set co-expression network built with GO Biological Process annotation system and visualized with betweenness centrality.
FunNetViz annotation network
Fig. 6: Example of 2 gene-set annotation network built with GO Cellular Component annotation system and visualized with betweenness centrality. Dashed edges represent inter-modular links and solid ones intra-modular links.

FunNetViz is implemented in Cytoscape, thus it offers the great power of the platform and that of other plugins. For example, once the network is loaded and visualized, a subset of genes (e.g. the top central) can be selected and used as input to other available plugins9. All Cytoscape functionalities can also be used to modify the visualization and export high quality images ready for publication.

6FunNet's tutorial

7FunNetViz example dataset

8FunNet assigns a gene to a functional module. For more information refer to FunNet’s tutorial


Download this tutorial in PDF format