A web tool for interactive network annotation visualization and topological analysis.
- Overview
- Key Features
- Installation
- Usage
- Input Formats
- Examples & Demo Data
- Contact & Support
- Publications
- License
NORMA (Network Makeup Artist) is a Shiny-based web application that lets you:
- Visualize multiple networks and their annotations (e.g., GO terms, pathway enrichments)
- Overlay annotations as pie-chart nodes or convex-hull “venn” shapes
- Detect communities automatically when no annotations are provided
- Refine layouts for optimal group separation with common graph algorithms
- Highlight and export publication-quality figures interactively
- Compare network topology metrics across different datasets
-
Multi-network support: Load and visualize several networks side by side.
-
Annotation overlays:
- Pie-chart nodes for multi-category annotations
- Convex-hulls for set-overlap style visualization
-
Community detection: Fast algorithms (e.g., Louvain, Infomap) for de novo grouping.
-
Flexible layouts: Fruchterman–Reingold, Kamada–Kawai, circular, grid, and more.
-
Interactive figure export: Customize colors, sizes, labels; download as PNG or PDF.
-
Topological analysis: Compute degree, clustering coefficient, betweenness, etc., and compare across networks.
-
Install R (≥4.0)
-
Install RStudio (optional, but recommended)
-
Clone this repo
git clone https://github.com/yourusername/NORMA.git cd NORMA
-
Install required packages
# From your R console: install.packages(c( "shiny", "igraph", "visNetwork", "plotly", "data.table", "DT", "RColorBrewer" ))
-
Run the app
# In RStudio or R console: shiny::runApp("path/to/NORMA")
-
Online demo: Launch NORMA in your browser
-
Local: Once the app is running, use the sidebar to upload:
- Network file (edge list or adjacency)
- Annotation file (tab-delimited with node → category)
-
Toggle between “Pie-chart nodes” and “Convex-hulls” in Visualization.
-
Explore Layout, Annotation, and Analysis tabs for customization.
-
Network:
- Edge list:
source<TAB>target
- Adjacency matrix: CSV or TSV
- Edge list:
-
Annotations:
-
Plain table:
node_id<TAB>category1,category2,...
-
-
See the Help → Input File tab in the app for detailed examples.
Download sample networks and annotation sets from the app’s Help → Examples tab or directly from our website. These include:
- Human protein–protein interaction subnetworks
- GO term enrichment outputs for test datasets
- Synthetic networks demonstrating overlapping modules
For questions, issues, or feature requests, please email:
George A. Pavlopoulos pavlopoulos@fleming.gr
Or open an issue on GitHub: https://github.com/yourusername/NORMA/issues
-
NORMA: The Network Makeup Artist Koutrouli M., Karatzas E., Papanikolopoulou K., Pavlopoulos G.A. Genomics, Proteomics & Bioinformatics. 2022 Jun;20(3):578⎼586. Epub 2021 Jun 24. doi: 10.1016/j.gpb.2021.02.005 PMID: 34171457
-
The network makeup artist (NORMA-2.0): Distinguishing annotated groups in a network using innovative layout strategies Karatzas E., Koutrouli M., Baltoumas F.A., Papanikolopoulou K., Bouyioukos C., Pavlopoulos G.A. Bioinformatics Advances. 2022 May 13;2(1):vbac036. doi: 10.1093/bioadv/vbac036 PMID: 36699373
This project is licensed under the MIT License – see the LICENSE file for details.