Languages and Frameworks



Java Universal Network/Graph Framework (JUNG)

Plug-and-play Visualization and analysis


Gephi Screenshot: Node and neighbor selection

Network Workbench

Co-authorship network created using the Network Workbench Tool from:


Largest line islands of authors citations - S. Korenjak-Černe, N. Kejžar, V. Batagelj: Network analysis of works on clustering and classification from Web of Science

Graphviz (At&T)

The yeast cell cycle regulatory network generated by GraphViz from:

Prefuse (Berkeley)

_gallery.png height="452" caption="Gallery of UC Berkeley Prefuse Projects"


Figure 34. Source: NodeXL website

University Of Maryland Human Computer Interaction Lab

NodeXL is an open source Excel add in that allows users with no programming knowledge to generate networks from popular social networks and from custom data sets


Touchgraph screenshot: Friends in Context

Other Network Visualization Tools

SoNIA (Stanford)

Jim Moody Social Balance Visualization

Force directed graph

Figure 26. Screenshot of network graph visualization of the structure of the University of Bochum in Germany using Hypergraph, which provides Java code and an api for visualizing hyperbolic geometry, handling graphs and generating hyperbolic tree layouts.

Flare (Berkeley)


Walrus Graph Visualization

The ecstasy of Communication, Made with Processing and Sonia

Processing (MIT)


Other Graph Maintenance/Analysis tools

Gremlin (Los Alamos National Laboratory)


Pro: Works with various graph databases and frameworks: NEO4j graph database, JUNG, models RDF graphs as property graphs
Language: Java based
NOTES: can do Page Rank and Dijkstra's shortest path

Gremlin comes with a connector to the Java Universal Network/Graph Framework (JUNG) that allows you to make use of the JUNG algorithms package on Gremlin property graphs. Below is a description of the JUNG algorithms package. The current distribution of JUNG includes implementations of a number of algorithms from graph theory, data mining, and social network analysis, such as routines for clustering, decomposition, optimization, random graph generation, statistical analysis, and calculation of network distances, flows, and importance measures (centrality, PageRank, HITS, etc.). — JUNG development team
JUNG algorithms are intended for single-relational graphs (that is, graphs with unlabeled edges). Gremlin was developed to process multi-relational graphs (that is, graph with labeled edges — aka. property graphs). Gremlin was intended to provide the expressibility of the path algebra defined here, but through graph traversal techniques (not matrix techniques). While its possible to implement multi-relational graph algorithms in Gremlin (as thats its purpose), there exists a wealth of existing toolkits and packages that come with a rich set of already implemented algorithms (e.g. JUNG). The connector provided between Gremlin and JUNG allows one to make use of JUNG’s algorithms package for processing Gremlin property graphs.1