PanoromiX: a time-course network medicine platform integrating molecular assays and pathophenotypic data

Background Network medicine aims to map molecular perturbations of any given diseases onto complex networks with functional interdependencies that underlie a pathological phenotype. Furthermore, investigating the time dimension of disease progression from a network perspective is key to gaining key insights to the disease process and to identify diagnostic or therapeutic targets. Existing platforms are ineffective to modularize the large complex systems into subgroups and consolidate heterogeneous data to web-based interactive animation. Results We have developed PanoromiX platform, a data-agnostic dynamic interactive visualization web application, enables the visualization of outputs from genome based molecular assays onto modular and interactive networks that are correlated with any pathophenotypic data (MRI, Xray, behavioral, etc.) over a time course all in one pane. As a result, PanoromiX reveals the complex organizing principles that orchestrate a disease-pathology from a gene regulatory network (nodes, edges, hubs, etc.) perspective instead of snap shots of assays. Without extensive programming experience, users can design, share, and interpret their dynamic networks through the PanoromiX platform with rich built-in functionalities. Conclusions This emergent tool of network medicine is the first to visualize the interconnectedness of tailored genome assays to pathological networks and phenotypes for cells or organisms in a data-agnostic manner. As an advanced network medicine tool, PanoromiX allows monitoring of panel of biomarker perturbations over the progression of diseases, disease classification based on changing network modules that corresponds to specific patho-phenotype as opposed to clinical symptoms, systematic exploration of complex molecular interactions and distinct disease states via regulatory network changes, and the discovery of novel diagnostic and therapeutic targets. Electronic supplementary material The online version of this article (10.1186/s12859-018-2494-6) contains supplementary material, which is available to authorized users.


Background
Many diagnostic and therapeutic target discovery research studies are rapidly adopting a temporal systems biology design that combines multi-population, multi-tissue, and multi-omics. Many believe a disease is a disturbance enacted on the "driver" genes that lead to a cascade of changes of other genes: initially to their first-degree interaction neighbors, followed by downstream effects [1]. Ideally, the network can be seen as several molecular modules that can be activated sequentially from one to the other. For example, Hwang et al. summarized a prion progression genetic network using seven mouse strains [2]. Huang et al. used gene expression profiling to show that trajectories of neutrophil differentiation converge to common networks eventually although the perturbations originated from different networks [3].
Multi-omics time series network analysis has three major challenges:

Modularity
Components with similar functions need to be tightened, labelled, and moved together.

Interactivity
Multiple layers of heterogeneous information need to be visually distinguished. Animation, search, zoom, and basic functions that modify the characteristics of components on site must be integrated.

Sharability
The network model needs to be easily shared, restored, and compared, without installing software.

Implementation
PanoromiX is hosted online at https://bioinfo-abcc.ncifcrf.gov/panoromics/. It is written in PhP5 and open-source Javascript libraries D3.js, jquery.js, and dat. gui.js. Since the PanoromiX software application is completely web-based, there are no installation requirements and no restrictions on which operating systems can be used. The software can be launched on any computer system that is connected to the internet and capable of running one of the current web browser applications with JavaScript capabilities enabled (Internet Explorer, Google Chrome, Mozilla Firefox, Safari).

Results
The PanoromiX application accepts data in tab-delimited text files with the file extension .txt. PanoromiX requires a "node" file containing information about individual points (nodes) of interest that will be plotted as part of the network visualization. A "link" file containing information about links or relationships between each of these points (nodes) is optional.
PanoromiX uses standard node-edge design to denote molecules and their interactions, respectively. The node shape and fill color can represent molecule types and expression levels. For example, one can display a longitudinal study of cancer patients where a node reprents a patient, illness stages as different colors, and therapies as shape . PanoromiX requires an input text file to initially populate the node of a biological network. This node file defines the nodes and requires an ID and Color for each designated node. Additional biological group information and optional graphical descriptions can be provided. An optional edge file defines network edges through a list of connected Source and Target IDs. The detailed description of the characteristics of node and edge file is listed in Tables 1 and 2. After submitting simple text files of network attributes, users can easily design and display an interactive network online using the toolbar.

Modularity
PanoromiX has a special meta-node design that allows user to define modules ("group" function in Table 1). All the components belonging to a module connect to its meta-node (Fig. 1). One can move the entire module by its meta-node. In addition, the users can also upload icons that will represent meta-nodes. The icons need to be .jpeg files and image dimension or resolution is not restricted as long as they are not greater than 5 MB in size each.

Interactivity
PanoromiX has a full interactive toolbar with search, zoom, animation play/stop, theme change, save, download, share functions, and a time point labelling tool. On the right hand side, there is a control panel to adjust animation speed, link width, font color, as well as other useful functions including sensitivity filtering. The sensitivity filtering feature allows the users to see only the node with desired changes between two adjacent time points.
PanoromiX also has a unique dynamic legend panel to associate the network model with external resources, such clinical variables, images, behavioral observations. (Additional files 1, 2 and 3) The node shape outline color is defined as a 'type' (Table 1), which is also displayed as a link on the legend panel. Clicking the link highlights all nodes of the same type. The users can employ this attribute to refer to any external knowledge, such as tissue-specific, disease/drug-related, ethnicity/ gender-specific information, and even correlations to clinical variables. Furthermore, users can upload an associated image, such as a histology or MRI image, and insert a description for each time point. Figure 1 shows such an example, where the user has uploaded brain images and behavior descriptions corresponding to prion disease severity in mice, while the six types of nodes underneath the image panel represent the six mouseprion strains used in the study.

Sharability and scalability
In an avenue comparable to how Jupyter notebooks [15] and R markdown [16] enable the sharability and reproducibility of modelling, PanoromiX also allows users to build and deposit their network models as templates to a permanent web space where other researchers can freely download and reproduce their results. The cloud-sourcing of network models significantly enhances the opportunity for collaboration between researchers, and will drastically reduce the manual labor required for designing visual representations. The users can designate the model to be read-only or writable. In read-only mode, the user can still modify the network and input their own contributions, but not overwrite the original work.
PanoromiX also supports imported network files from Cytoscape [4], IPA [6], and custom files. Once the files are uploaded, a "Data Label Assignment" page will pop up ( Fig. 2) for the user to indicate which PanoromiX data fields will correspond to the columns in the Cytoscape/ IPA data files. The visualization module of PanoromiX is written by Javascript. However, the computational module in the backend server can call Python and R scripts, whenever more advanced computational techniques are needed. The output will be stored in a text file that the Java script can read and parse. By hosting these computations on a powerful remote server, PanoromiX alleviates the problem of visualizing massive networks on small workspaces, and helps make large-scale network analysis available to scientists without extensive high-performance computing capabilities. In comparion to the popular tools like Cytoscape [4], Gephi [5], and IPA [6], PanoromiX has unique and robust features. Particularly valuable is PanoromiX' interactive animation, which is very helpful in exploring and presenting time-series trends ( Table 3, Additional file 4). This field denotes the unique id of this node or point. It is used by the application to reference each node individually and perform operations such as linking and defining colors, shape and so on. This field must be unique.
name General text Required This field is the label that is displayed under each node on the visualization and although similar to the id in our example data, this label can be whatever the user chooses, and in addition does not need to be a unique value.
group General text Required Since the PanoromiX application creates modules or groups from the data it processes, this field is necessary to indicate which group, or module, a particular node is a member of. This field does not need to be unique as many nodes may belong to the same group.
type General text Required This field is used to denote a characteristic about each node, aside from its group. For example, one can define both 'Male' and 'Female' nodes.
description General Text Optional This field allows the user to enter a short paragraph of text (256 characters or less) containing a description, or additional information related to each node. We will discuss how this is displayed when we illustrate how to interact with the visualization.
size Numerical Optional Depending on the nature of your data, it may be beneficial to render some nodes larger on the screen, and some smaller. This numerical value (1-5) allows you to do just that. It controls the dimensions or size of each node on screen.
color Numerical Optional This field allows the user to enter a numerical value (1-5) to display a time-point profile associated with the node.
shape Numerical Optional This field allows the user to specify a general shape for each of the nodes by using a numerical value (0-5) in this column. 0circle, 1square, 2diamond, 3cross, 4 -triangle (downward pointing), 5triangle (upward pointing) where the link will be drawn from. If you enter an invalid node id here the link will be ignored.
targetId General text Required This field must contain the id value of the node (from your corresponding nodes file) where the link will be drawn to. If you enter an invalid node id here the link will be ignored. Displaying huge-interconnected networks on the computer or smart device with limited memory is a universal challenge. The computational complexity of force-directed graph in D3.js is O(nlog n), thus rending 5000 nodes and edges will expect a slowdown. For very large networks, offline static network tools like Gephi [5] will be more practical. In the future, we will implete more analytic components, including network reconstruction algotihms to automatically create network modules.

Conclusions
PanoromiX is a comprehensive platform to enhance network model reproducibility, time-series interpretability, and data associability. This emergent tool of network medicine visualizes the interconnectedness of tailored genome assays to pathological networks and phenotypes for cells or organisms in a data-agnostic manner. As an advanced network medicine tool, PanoromiX allows monitoring of panel of biomarker perturbations over the progression of diseases, disease classification based on