NAViGaTOR: Network Analysis, Visualization and Graphing Toronto (original) (raw)

Bioinformatics. 2009 Dec 15; 25(24): 3327–3329.

Kevin R. Brown

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

David Otasek

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

Muhammad Ali

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

Michael J. McGuffin

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

Wing Xie

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

Baiju Devani

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

Ian Lawson van Toch

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

Igor Jurisica

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

1Division of Signaling Biology, Ontario Cancer Institute and the University Health Network, Toronto, ON, 2Department of Software and IT Engineering, École de technologie supérieure, Montreal, QC and 3Departments of Medical Biophysics and Computer Science, University of Toronto, Toronto, ON, USA

*To whom correspondence should be addressed.

Associate Editor: Jonathan Wren

Received 2009 Jul 22; Revised 2009 Sep 21; Accepted 2009 Oct 11.

This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/2.5/uk/) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

Supplementary Materials

[Supplementary Data]

GUID: 884CC4F4-2BF3-491D-9181-6D09C06A49D0

GUID: 47119A6F-B64F-4E9F-A03E-85AA44847324

Abstract

Summary: NAViGaTOR is a powerful graphing application for the 2D and 3D visualization of biological networks. NAViGaTOR includes a rich suite of visual mark-up tools for manual and automated annotation, fast and scalable layout algorithms and OpenGL hardware acceleration to facilitate the visualization of large graphs. Publication-quality images can be rendered through SVG graphics export. NAViGaTOR supports community-developed data formats (PSI-XML, BioPax and GML), is platform-independent and is extensible through a plug-in architecture.

Availability: NAViGaTOR is freely available to the research community from http://ophid.utoronto.ca/navigator/. Installers and documentation are provided for 32- and 64-bit Windows, Mac, Linux and Unix.

Contact: ac.otnorotu.ia@siruj

Supplementary information: Supplementary data are available at Bioinformatics online.

1 INTRODUCTION

The availability of protein–protein interaction (PPI) data is increasing rapidly through literature-derived databases (Bader et al., 2003; Breitkreutz et al., 2002; Hermjakob et al., 2004a; Peri et al., 2004; Xenarios et al., 2000; Zanzoni et al., 2002), high-throughput detection methods (Barrios-Rodiles et al., 2005; Rual et al., 2005) and computational predictions (Brown and Jurisica, 2005; Persico et al., 2005). These data, collectively referred to as the interactome, are critical to our understanding of both normal cellular processes and disease mechanisms. Visualizing the interactome, along with integrating orthogonal data types, may aid in the understanding of cell function, help elucidate hidden relationships within the data and help prioritize functional studies.

Several biological graph visualization tools are currently available, implementing a diverse range of approaches and algorithms (Breitkreutz et al., 2003; Chin et al., 2008; Hu et al., 2004; Ju and Han, 2003; Macpherson et al., 2009; Paananen and Wong, 2009). Cytoscape (Shannon et al., 2003), in particular, has been widely adopted by the biological community for its ease of use and extensibility through open source plug-in development.

While many of these tools are effective and widely used, there are several critical areas where these applications require improvement (reviewed in Suderman and Hallett, 2007). Scalability is essential to visualize the tens of thousands of known PPI, which is a challenge for current layout algorithms and software. Biological graph drawing software must also be able to handle richly annotated data, including genomic and proteomic profiles, KEGG pathways (Kanehisa and Goto, 2000), Gene Ontology (GO) annotations, data in PSI-MI (Hermjakob et al., 2004b) and BioPAX formats (http://www.biopax.org/), in addition to the vast quantity of microarray data that is currently available.

NAViGaTOR builds upon these earlier efforts, addressing known issues in existing software. NAViGaTOR uses a combination of hardware-based graphics acceleration and highly optimized layout algorithms to enable interactive visualization of large networks. It supports community-based data interchange formats, such as PSI-MI, BioPAX and GML, facilitating interoperability with existing software tools. Additionally, NAViGaTOR includes a rich suite of built-in analysis and visualization functions, which can be extended through an application programming interface (API). Here, we describe the implementation of NAViGaTOR, and highlight how this tool improves upon existing network visualization packages.

2 SOFTWARE

2.1 Implementation

NAViGaTOR has been implemented in Java (v1.6), providing platform-independence, and uses JOGL (https://jogl.dev.java.net/) to enable OpenGL hardware-accelerated graphics rendering. At present, the core code-base is closed-source to ensure stability, but future enhancements will extend the plug-in API to an OSGi-compliant (http://www.osgi.org/Main/HomePage) framework that enables community-driven extensibility.

2.2 Features

NAViGaTOR enables interactive visualization and analysis of complex graphs that are typical in systems biology studies. Graphs can be loaded from PSI-MI XML, BioPax, GML and tab-delimited text files, or through online databases such as I2D (http://ophid.utoronto.ca/i2d) and cPATH (http://cbio.mskcc.org/cpath/). Both 2D and 3D network views are fully interactive, allowing the user to manually manipulate the graph, or to use automated layouts such as circular, linear or concentric circular on subsets of nodes or entire graphs. A spreadsheet view supports selecting and deselecting nodes, edges and paths based on any attributes. Nodes and edges can be grouped into subsets, which can be collapsed or expanded to simplify views, or manipulated through set operations. Network analysis tools provide information about node and edge connectivity, shortest paths, identify hubs, cliques and articulation points and summarize network statistics. NAViGaTOR can also use a multi-threaded implementation to efficiently generate random networks for enrichment analyses. Fully annotated graphs can be exported to six different graphics formats, including PDF and SVG. In summary, NAViGaTOR provides a network analysis platform that is rich in the features essential to many biological applications, and yet is extensible through a plug-in interface to include additional features when required. See Figure 1 and the Supplementary Materials for examples of the NAViGaTOR interface and rendered networks.

An external file that holds a picture, illustration, etc. Object name is btp595f1.jpg

Screen capture of the NAViGaTOR user interface. Labels indicate the various tools and descriptive regions of the interface. A graph is shown in the ‘Graph Panel’, with edges adjusted automatically by ‘Edge Filters’. Filters can be used to automatically control visual attributes of both nodes and edges.

2.3 Advances

NAViGaTOR's ability to handle larger datasets is facilitated through optimized layout algorithms, hardware-based graphics acceleration and a reduced memory footprint relative to other software. NAViGaTOR performs an initial layout using Graph Drawing with Intelligent Placement (GRIP; Gajer and Kobourov, 2002), which performs network layout in near linear time, and then continuously updates the layout of the graph using a multi-threaded grid-variant (Fruchterman and Reingold, 1991) of a force-directed layout algorithm. When benchmarked against the force-directed algorithms in Cytoscape and VisANT, NAViGaTOR consistently provided graphs rendered in significantly shorter time (Fig. 2; Supplementary Fig. 3.3). Only the yFiles Organic plug-in for Cytoscape rendered in similar time to NAViGaTOR, although the resulting graph was poorly optimized (compare Supplementary Fig. 3.5C to Supplementary Fig. 3.4C).

An external file that holds a picture, illustration, etc. Object name is btp595f2.jpg

Performance comparisons between applications. The Reactome Caenorhabditis elegans BioPax file was used to test the performance of several graph visualization applications in loading and visualizing the graph. Only Cytoscape and NAViGaTOR were able to load the BioPax file directly; Interviewer3 required a GML export from NAViGaTOR, VisANT required a PSI-MI XML v1.0 file, and Osprey required a tab-delimited text file. Stacked bars were used to show the cumulative loading and rendering time, or the total time to view a graph.

OpenGL enables NAViGaTOR to take advantage of hardware-based acceleration to render larger graphs in both 2D and 3D. Additionally, the data structures within NAViGaTOR were designed to maintain a small memory footprint in order to provide greater scalability for large datasets. When compared against Cytoscape and VisANT, NAViGaTOR had a memory footprint approximately half that of Cytoscape, although a 12–38% larger footprint than VisANT (Supplementary Fig. 5.1).

The NAViGaTOR user interface includes unique tools to help simplify the ‘hairball’, which is a common challenge in many PPI networks. Alpha blending is a technique to deemphasize unimportant areas of the network and focus on important areas by ‘fading out’ selected nodes and edges. Automated ‘filters’ let users map node and edge properties, such as color, size, shape and opacity to any numeric or text attribute. For instance, nodes can be scaled by degree or betweenness centrality, and colors can be mapped to GO ontology categories. Rectangle and lasso selection, and the unique ability to (de)select a connected neighborhood of nodes by dragging out its radius in edges, allow users to easily select specific subsets of nodes and edges, while other tools allow the selected subset to be rotated, scaled or laid out along a line or circle. Combined with pan/zoom navigation, users can quickly explore or simplify complicated networks.

3 FUTURE DEVELOPMENT

NAViGaTOR has evolved from an in-house visualization tool to a more versatile, comprehensive platform. While the current version of NAViGaTOR includes a plug-in API, NAViGaTOR 3.0 will adopt a more formal open plug-in interface compliant with the OSGi framework. This framework will allow for community-driven development through small, tightly coupled bundles while protecting the core code-base of the application. NAViGaTOR will also serve as a platform to explore novel ways for biologists to interact with graphs, as well as new ways to encode and display information in biological networks.

Supplementary Material

ACKNOWLEDGEMENTS

We would like to acknowledge Richard Lu and Frederic Breard for supporting the I2D database, which provides PPI data and annotations for NAViGaTOR, Rick Valenzano for researching and implementing the GRIP layout, and Uzma Khan for helping with updating and improving the NAViGaTOR web site (http://ophid.utoronto.ca/navigator/).

Funding: Genome Canada via the Ontario Genomics Institute; Canada Foundation for Innovation (grant nos 12301 and 203383); Canada Research Chair Program in part; Ontario Research Fund Research Excellence.

Conflict of Interest: none declared

REFERENCES


Articles from Bioinformatics are provided here courtesy of Oxford University Press