GSoC/GCI Archive
Google Summer of Code 2013

National Resource for Network Biology (NRNB)

Web Page:

Mailing List:


The National Resource for Network Biology (NRNB) is organizing the joint efforts of Cytoscape, PathVisio and WikiPathways. This is a great opportunity to work at the intersection of biology and computing. Our development teams are composed of biologists and programmers, providing a unique perspective on building and using open source tools.

Cytoscape is a general network visualization tool that integrates network topology with data about the network into the visualization. Cytoscape is rapidly becoming a systems biology standard. Cytoscape consists of a plugin framework which extends functionality in new ways. Our team consists of programmers and biologists from both academia and industry including: UC San Diego, UC San Francisco, U of Toronto, Agilent, Institute for Systems Biology, Sloan-Kettering, Institut Pasteur and others.

WikiPathways is a wiki for biological pathways. The wiki approach allows biologists and domain experts to easily create and update pathways. Pathways can be directly modified from a web browser using an embedded applet where you can draw genes, proteins and their interactions like in any popular drawing tool. The pathways can be used as images for publication and in data analysis tools such as GenMAPP, PathVisio and Cytoscape. WikiPathways itself is completely open source and is built on top of MediaWiki, using PathVisio as the pathway editor and BridgeDb as the backend database. WikiPathways is developed and maintained by BiGCaT Bioinformatics (University of Maastricht) and the Gladstone Institutes.


  • Automated pathway-creation plugin for PathVisio My idea is to create a plugin that aids the user of PathVisio in pathway creation by automating the process of connecting data nodes based on knowledge from different data sources such as interaction databases and text mining of literature. The user will be able to provide a list of data identifiers(representing e.g. gene products and metabolites).The plugin will create data nodes based on this input and it will make use of the “pathwayLoom” plugin ( to look for possible connections between these nodes. After the nodes are connected a pathway will be drawn in a way that is clear and understandable for the user.
  • Bird's eye view pan control for Cytoscape.js Navigation Panel is a great improvement for Cytoscape.js usability. It also solves the problems of bird’s eye view of the graph and easier navigation through the graph.
  • Idea 24: Compound Graph Layout Algorithm for Cytoscape.js The aim of this project is to implement a Compound Graph Layout algorithm to be part of Cytoscape.js.
  • IDEA 25: Specialized Layout Algorithm for SBGN Process Description Diagrams This project involves customizing CoSE (Compound Spring Embedder) layout algorithm [3] for biological network drawings using Process Description language of SBGN (Systems Biology Graphical Notation) [2]. A number of customizations could be implemented, including layout algorithm to consider things like substrates and products of process nodes on opposite sides and tiling of members properly inside a molecular complex. This work would improve the SBGN-ML support in BioPAX-Paxtools[4] as well as improving the layout in the network view of cBio Cancer Genomics portal [7]. Besides the improvements on BioPAX-Paxtools[4] and cBioPortal[7], more general hope for the project is providing a common usable asset for the tools that supports SBGN Process Description language.
  • Idea 26: CentiScaPe Development and addition of extra Centrality parameter called Eigenvector Centrality. CentiScaPe is a Cytoscape App that allows computing network centrality parameters. It calculates Degree, Average Shortest Path, Eccentricity, Closeness, Betweenness, Centroid, Stress and Radiality. It allows the user to analyze existing relationships between experimental data provided by the users and node centrality values computed by the App. While CentiScaPe provides a number of useful capabilities it could be significantly improved with two or more of additions or enhancements. My project will add the following to CentiScaPe: 1.Add support for directed networks. Current support for only undirected networks limits the sophistication and interpretability of centrality calculations. 2.Add support for integrating experimental data into the topological analysis to be used as weights in the calculations. 3.Add an Extra Centrality parameter called Eigenvector Centrality, which is one among the centralities in graph theory. 4.Allow plugin to pass parameters and network to an existing web service version of the CentiScaPe computation to improve performance for large networks. This will enrich experimental data with network topological parameters even for directed, weighted and large networks. project proposal -
  • Idea 27: Modeling and Visualizing Cell Signaling Networks with SigViz Software tools like cytoscape can represent biological data in the form of network graphs with nodes, edges, and attributes. These attributes are the static properties of the nodes and edges (components). Using them, we can easily visualize and segregate components using clustering, paths etc. However, in some fields, like cell signaling, the attributes of the nodes and edges should not be static. They change over time and with dependencies on one another. In such cases, the amount of data becomes huge and such multi-state representations, if done statically, become cumbersome and non-intuitive.
  • Idea 31 : Visualization of Dynamic Graphs in Cytoscape DynNetwork is an OSGi bundle developed by Sabina Sara Pfister as a 2012 GSOC project to provide support for importing, visualizing, and analysing dynamical networks in Cytoscape 3.0. This project would be an extension of the DynNetwork project. While DynNetwork allows dynamic networks to be imported from XGMML files, support for importing dynamic networks from spreadsheets would be a great addition. On the visualization side I feel the fish-eye lens would be a really cool feature to add. In addition to the above two features, I intend to implement the following features which would help the researchers greatly to analyse the networks: a) Graph metrics such as in-degree, out-degree, etc displayed graphically against time b) Dynamic attributes of a node/edge displayed as a timeseries graph.
  • Identifier Mapping App for Cytoscape 3.0 Function/Pathway annotation for an existing network/gene set is an essential step for network/gene set analysis. Although current version of CyThesarures theoretically can annotate network with several steps, it’s not yet convenient enough and lack of supporting to customized database. A one step function/pathway annotation function will be not only a complement of CyThesarures, but also a potentially useful service for all other function/pathway analysis Apps, such as Bingo, Mosaic, NOA and so on.
  • Implementation of Fuzzy Clusters in Cytoscape Clustering is the task of grouping a set of objects, based on their similarity with other members of the group (cluster). In hard clustering, data is divided into distinct clusters, where each data element belongs to exactly one cluster.But in real applications, there is very often no sharp boundary between clusters, which makes it difficult to discretely assign objects to distinct clusters. Such scenarios require fuzzy clustering, which allows objects to belong to several clusters simultaneously, with different degrees of membership. The project deals with implementation of fuzzy clusters in cytoscape and their visualization.
  • Implementing a Cytoscape 3.0 app for the HyperModules algorithm The goal is to create an application for cytoscape 3.0 implementing the HyperModules algorithm for local network graph search designed by Bader and Riemand, and to test the newly implemented algorithm on new data sets to discover new correlated subnetworks of protein interactions.
  • iPhone application for viewing of public/private results in the Virtual Cell I propose to make an iOS app for vcell users to be able to carry out operations on vcell server using the provided API. The app will contain three tabs, first tab listing all jobs, second tab listing all simulations and third tab listing all models. Each tab will have various actions associated with them. A user needs to authenticate to use all the features of the app otherwise actions allowed for public usage will be available to the user.
  • Multiplication of nodes and directed graphs in Cytoscape 3 Cytoscape is useful for the representation of networks such as genes, proteins and metabolites (nodes of the graph), and through the indices of centrality can obtain information about how important is a node in the network. However, these indices would be inaccurate, this is because the node is an element, a component of a biological system, and is not considered the number of its repetitions in the system. (multiplication of nodes)
  • SBML Importer Plugin for PathVisio To Develop a SBML importer Plugin for PathVisio to allow researchers to visualize and overlay data on the same pathway models which they use in simulation experiments. To provide a better visualization of the models and layouts in SBML and an export feature which enables the user to export the models and layouts in SBML format. And to Implement an PathVisioRPC interface for SBML importer and exporter.
  • WikiPathways client plugin for PathVisio To develop a PathVisio plugin to browse, search and upload pathways in WikiPathways directly from the standalone PathVisio version.