List of graph visualization libraries
👉 For a list of free graph visualization applications, check out my other medium post.
Cytoscape.js: a graph library, written in pure JS, with a permissive open source license (MIT) for the core Cytoscape.js library and all first-party extensions. It is used in commercial projects and open-source projects for both front-facing app use-cases and developer use-cases. It includes graph theory algorithms such as BFS or PageRank.
GGraph: a graph visualization library for big data released under the Apache 2.0 License. It’s built on top D3 and extends the notion of nodes and links with groups of nodes.
Rapidd: a commercial diagramming framework to build complex applications, combining HTML 5 + SVG technologies. Rappid is the commercial extension to the JointJS Core library.
ReGraph: a commercial React library to build graph visualization applications. It’s developed by Cambridge Intelligence.
visNetwork: VisNetwork is a Proprietary R package, using vis.js library for network visualization.
yFiles for HTML: a commercial programming library for visualizing any kind of diagram, graph, or network.
AfterGlow: a script written in Perl that assists with the visualization of log data. It reads CSV files and converts them into a graph. The latest version of AfterGlow 1.6.5 was released on 07/08/13.
Circos: a software package in Perl for visualizing data and information. It displays data in a circular layout.
Dash Cytoscape: a Component Library for Dash aimed at facilitating network visualization in Python, wrapped around Cytoscape.js.
Deep Graph Library: a Python package built for implementation of graph neural network model family, on top of existing DL frameworks.
Flare: an ActionScript library for creating visualizations that run in the Adobe Flash Player. The toolkit supports data management, visual encoding, animation, and interaction techniques.
GDToolkit (GDT): a C++ Graph Drawing Toolkit designed to manipulate several types of graph, and to automatically draw them according to many different aesthetic criteria and constraints.
Grano: an open source Python tool for journalists and researchers who want to track networks of political or economic interest. It helps understand the most relevant relationships in investigations and merge data from different sources.
Graph Stream: a Java library for the modeling and analysis of dynamic graphs. You can generate, import, export, measure, layout and visualize them.
Graph Tool: a Python module for manipulation and statistical analysis of graphs. The core data structures and algorithms are implemented in C++.
Graphviz: a variety of C software for drawing attributed graphs and implementing a handful of common graph layout algorithms. The Graphviz layout programs take descriptions of graphs in text language and make diagrams in image, SVG or PDF formats; or display in the browser.
Graphvy: basic graph data exploration and visualization using Kivy and released under the MIT License.
igraph: a collection of network analysis tools open source and free. igraph can be programmed in R, Python, Mathematica and C/C++.
ipysigma: a custom Jupyter widget library to display graphs using sigma.js, released under the Apache 2.0 License.
Java Universal Network/Graph Framework (JUNG): a Java software library that provides a common language for the modeling, analysis, and visualization of data that can be represented as a graph or network.
LargeViz: a C++ tool released under the Apache 2.0 License to visualize large-scale and high-dimensional data. It supports visualizing both high-dimensional feature vectors and networks.
multiNetX: a python package, released under the GNU Public License, for the manipulation and visualization of multilayer networks.
Muxviz: a framework for the analysis and visualization of interconnected multilayer networks. It is released under the GNU General Public License v3.0.
NodeBox: a Graph library in Python released under the GPL to visualize small graphs (<200 elements) with algorithms from NetworkX for betweenness centrality and eigenvector centrality.
OGDF: a self-contained C++ class library for the automatic layout of diagrams. OGDF offers algorithms and data structures to use within your own applications or scientific projects. The library is available under the GNU General Public License.
Py3Plex: a Python library released under the BSD License, providing algorithms for decomposition, visualization, and analysis of graph data.
PyGraphistry: a Python visual graph analytics library to extract, transform, and load big graphs into Graphistry’s cloud-based graph explorer.
Quickgraph: a C# open source tool providing generic directed/undirected graph data structures and algorithms for .NET. QuickGraph supports MSAGL, GLEE, and Graphviz to render the graphs, serialization to GraphML.
SoNIA: a Java-based package for visualizing dynamic or longitudinal “network” data. It is released under the GNU GPL License.
Statnet: an integrated set of R tools for the representation, visualization, analysis, and simulation of network data. It is released under GPL-3.
Tulip: an information visualization framework dedicated to the analysis and visualization of relational data. Written in C++ the framework enables the development of algorithms, visual encodings, interaction techniques, data models, and domain-specific visualizations.
Tom Sawyer Perspectives: a commercial graph SDK with a graphics-based design and preview environment. The platform integrates enterprise data sources with graph visualization, layout, and analysis technologies.
For the list of graph visualization applications, or presentation of the graph technology ecosystem, check out my other medium posts.
Please feel free to comment on this post with libraries I forgot. I’d gladly add them to the list!