facebook-pixel
  • Big Data & Technology
  • Elise Devaux
  • AUG 09, 2019

The list of graph visualization libraries

This list presents various graph (aka network) visualization libraries. Most of these libraries are free or open-source. A few are commercial products. There are mainly JavaScript libraries but you’ll also find other languages. The post lists libraries of various ‘depth’, some offering basic layouts and interaction, other more advanced customization and integration options.

JavaScript graph visualization libraries

Alchemy.jsa JavaScript graph drawing application built in D3 to get started with graph visualization applications. Most customization of the application takes place by overriding default configurations, rather than direct implementation via JavaScript.

Arbor.JSa JavaScript graph visualization library released under MIT license using web workers and jQuery. It provides a force-directed layout algorithm plus abstractions for graph organization and screen refresh handling. You can use it with canvas, SVG, or positioned HTML elements. Last updated in 2012.

ccNetViza lightweight JavaScript library for large network graphs visualization using WebGL. It is an open source library available under GPLv3 License developed in the Helikar Lab.

Cola.JSan open-source JavaScript library released under the MIT License to arrange HTML5 documents and diagrams using constraint-based optimization techniques. It works well with libraries like D3.js, svg.js, and Cytoscape.js. The core layout is based on a complete rewrite in JavaScript of the C++ LibCola library.

Cytoscape.jsa 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.

D3.JSa JavaScript library for manipulating documents based on data using HTML, SVG, and CSS. D3 combines visualization components and a data-driven approach to DOM manipulation.

Dagre-D3a JavaScript library released under the MIT License to lay out directed graphs on the client-side. The Dagre-D3 library acts as a front-end to Dagre, providing actual rendering using D3.

Dracula Graph librarya JavaScript library released under the MIT License to display and layout interactive connected graphs and networks, along with various related algorithms from the field of graph theory. Just plain JavaScript and SVG.

El Grapho: a JavaScript WebGL graph data visualization framework to visualize and interact with large-graphs. It is released under the MIT License.

G6a JavaScript graph visualization framework released under the MIT License which provides a set of basic mechanisms, letting developers build graph visualization analysis application or graph visualization modeling application.

GGrapha 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.

GoJSa proprietary JavaScript / TypeScript library for building interactive diagrams and graphs.

GraphGLa JavaScript network visualization library released under the MIT License. It is designed for rendering large graphs in web browsers and dynamic graph exploration. It is suitable for static files (exported GraphML/GEXF files converted to JSON) and for dynamic files.

Graphosaurusa three-dimensional JavaScript static graph viewer powered by WebGL (three.js) released under the MPL License.

H3Viewera JavaScript library providing layout and navigation of node-link graphs in 3D hyperbolic space. The library handles graphs up to 300,000 edges.

JavaScript Diagram: a commercial JavaScript library for visualizing, creating, and editing interactive diagrams. It supports creating flowcharts, organizational charts, mind maps, and BPMN charts either through code or a visual interface.

JavaScript InfoVis Toolkit: a Toolkit for creating Interactive Data Visualizations for the Web, released under the MIT License

Joint JSa JavaScript diagramming library released under the MLP License 2.0 with features to support visualization and interaction with diagrams and graphs.

JS Graph ita JavaScript library for graphs representation that allows you to connect your HTML elements using CSS classes to declare blocks, connectors, labels without Javascript code. JS Graph is released under the Apache 2.0 License

jsPlumba JavaScript graph library released under the MIT License to visually connect elements on their web pages. It uses SVG and runs on all browsers from IE9 and later.

Keylinesa commercial JavaScript software development kit (SDK) for building applications to visualize and analyze complex connected data.

mxGrapha client-side JavaScript diagramming library, released under the Apache 2.0 License, that uses SVG and HTML for rendering. draw.io is an example that extends the functionality of this library.

NeovisJsa JavaScript graph library combining Neo4j and vis.js to produce graph visualizations in the browser with data from Neo4j. It can connect to Neo4j instance, specify labels and property to be displayed, specify Cypher query to populate.

NetJSONa JavaScript tool, released under BSD License, to leverage D3.js to visualize network topology using the NetJSON NetworkGraph format.

NetworkCube: an open source JavaScript / Typescript visualization library for multivariate dynamic networks.

Ogmaa commercial JavaScript library for large-scale graph visualization and interaction, developed by Linkurious.

Popoto.jsa JavaScript library built with D3.js designed to create visual query builder for Neo4j graph databases. The graph queries are translated into Cypher and run on the database. It is released under the GNU Public License.

Processing.JSthe JavaScript port of the Processing visual programming language. It allows web browsers to display animations, visual applications, games and other graphically rich content without any plug-ins.

Protovisa JavaScript library released under the BSD License, to compose custom views of data with simple marks such as bars and dots. Protovis is no longer under active development.

Rapidda 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.

Sigma.JSa JavaScript library released under the MIT license and dedicated to graph drawing. It lets developers publish networks on Web pages and integrate network exploration in rich Web applications.

Sobaa JavaScript visualization toolkit released under the MIT license. Soba is a 2D plotting library integrated with Sushi written in JavaScript.

Springy: a force directed layout graph layout in JavaScript.

uGraphan MIT-license open source JavaScript & SVG library for implementing custom interactive diagrams.

Vis.JS: is a JavaScript browser-based visualization library released under the Apache 2.0 License. The library enables manipulation of and interaction with large amounts of dynamic data.

visNetworkVisNetwork is a Proprietary R package, using vis.js library for network visualization.

VivaGraphJSa graph drawing library for JavaScript designed to support different rendering engines and layout algorithms.

yFiles for HTML: a commercial programming library for visualizing any kind of diagram, graph, or network.

Non-JavaScript visualization libraries

AfterGlowa 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.

Circosa software package in Perl for visualizing data and information. It displays data in a circular layout.

Dash Cytoscapea 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.

Flarean 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.

Granoan 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 Toola Python module for manipulation and statistical analysis of graphs. The core data structures and algorithms are implemented in C++.

Graphviza 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.

Graphvybasic graph data exploration and visualization using Kivy and released under the MIT License.

igrapha collection of network analysis tools open source and free. igraph can be programmed in R, Python, Mathematica and C/C++.

ipysigmaa 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.

LargeViza 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.

NodeBoxa Graph library in Python released under the GPL to visualize small graphs (<200 elements) with algorithms from NetworkX for betweenness centrality and eigenvector centrality.

OGDFa 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.

Py3Plexa Python library released under the BSD License, providing algorithms for decomposition, visualization, and analysis of graph data.

PyGraphistrya Python visual graph analytics library to extract, transform, and load big graphs into Graphistry’s cloud-based graph explorer.

Quickgrapha 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.

SoNIAa Java-based package for visualizing dynamic or longitudinal “network” data. It is released under the GNU GPL License.

Statnetan integrated set of R tools for the representation, visualization, analysis, and simulation of network data. It is released under GPL-3.

Tulipan 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 Perspectivesa commercial graph SDK with a graphics-based design and preview environment. The platform integrates enterprise data sources with graph visualization, layout, and analysis technologies.

The Harvard Innovation Lab

Made in Boston @

The Harvard Innovation Lab

350

Matching Providers

Matching providers 2
comments powered by Disqus.