Simple algorithms for network visualization: A tutorial

The graph drawing and information visualization communities have developed many sophisticated techniques for visualizing network data, often involving complicated algorithms that are difficult for the uninitiated to learn. This article is intended for beginners who are interested in programming their own network visualizations, or for those curious about some of the basic mechanics of graph visualization. Four easy-to-program network layout techniques are discussed, with details given for implementing each one: force-directed node-link diagrams, arc diagrams, adjacency matrices, and circular layouts. A Java applet demonstrating these layouts, with open source code, is available at http://www.michaelmcguffin.com/research/simpleNetVis/. The end of this article also briefly surveys research topics in graph visualization, pointing readers to references for further reading.

[1]  Wendy E. Mackay,et al.  CPN/Tools: A Post-WIMP Interface for Editing and Simulating Coloured Petri Nets , 2001, ICATPN.

[2]  Peter Eades,et al.  A Heuristic for Graph Drawing , 1984 .

[3]  Igor Jurisica,et al.  Interaction Techniques for Selecting and Manipulating Subgraphs in Network Visualizations , 2009, IEEE Transactions on Visualization and Computer Graphics.

[4]  Vladimir Batagelj,et al.  Pajek - Program for Large Network Analysis , 1999 .

[5]  Arjan Kuijper,et al.  Visual Analysis of Large Graphs , 2010, Eurographics.

[6]  Jean-Daniel Fekete,et al.  NodeTrix: a Hybrid Visualization of Social Networks , 2007, IEEE Transactions on Visualization and Computer Graphics.

[7]  Jeffrey Heer,et al.  Orion: A system for modeling, transformation and visualization of multidimensional heterogeneous networks , 2011, IEEE VAST.

[8]  Mary Czerwinski,et al.  Design Study of LineSets, a Novel Set Visualization Technique , 2011, IEEE Transactions on Visualization and Computer Graphics.

[9]  Martin Wattenberg,et al.  Arc diagrams: visualizing structure in strings , 2002, IEEE Symposium on Information Visualization, 2002. INFOVIS 2002..

[10]  Jarke J. van Wijk,et al.  Force‐Directed Edge Bundling for Graph Visualization , 2009, Comput. Graph. Forum.

[11]  Inanç Birol,et al.  Hive plots - rational approach to visualizing networks , 2012, Briefings Bioinform..

[12]  Andreas Noack,et al.  Energy-Based Clustering of Graphs with Nonuniform Degrees , 2005, GD.

[13]  Jeffrey Heer,et al.  GraphPrism: compact visualization of network structure , 2012, AVI.

[14]  Danny Holten,et al.  Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data , 2006, IEEE Transactions on Visualization and Computer Graphics.

[15]  Martin Wattenberg,et al.  Mapping Text with Phrase Nets , 2009, IEEE Transactions on Visualization and Computer Graphics.

[16]  Michael Burch,et al.  Visualizing the Evolution of Compound Digraphs with TimeArcTrees , 2009, Comput. Graph. Forum.

[17]  U. Brandes A faster algorithm for betweenness centrality , 2001 .

[18]  Pierre Dragicevic,et al.  GraphDice: A System for Exploring Multivariate Social Networks , 2010, Comput. Graph. Forum.

[19]  Vladimir Batagelj,et al.  An O(m) Algorithm for Cores Decomposition of Networks , 2003, ArXiv.

[20]  Heidrun Schumann,et al.  In Situ Exploration of Large Dynamic Networks , 2011, IEEE Transactions on Visualization and Computer Graphics.

[21]  李丽,et al.  《Tsinghua Science and Technology》网上国际审稿 , 2002 .

[22]  Niklas Elmqvist,et al.  TimeMatrix: Analyzing Temporal Social Networks Using Interactive Matrix-Based Visualizations , 2010, Int. J. Hum. Comput. Interact..

[23]  Pierre Dragicevic,et al.  GeneaQuilts: A System for Exploring Large Genealogies , 2010, IEEE Transactions on Visualization and Computer Graphics.

[24]  M. Sheelagh T. Carpendale,et al.  Edgelens: an interactive method for managing edge congestion in graphs , 2003, IEEE Symposium on Information Visualization 2003 (IEEE Cat. No.03TH8714).

[25]  Philippe Castagliola,et al.  On the Readability of Graphs Using Node-Link and Matrix-Based Representations: A Controlled Experiment and Statistical Analysis , 2005, Inf. Vis..

[26]  Jacques Bertin,et al.  Semiologie graphique : les diagrammes les réseaux, les cartes , 1969 .

[27]  Tamara Munzner,et al.  TopoLayout: Multilevel Graph Layout by Topological Features , 2007, IEEE Transactions on Visualization and Computer Graphics.

[28]  Michael Kaufmann,et al.  Improving Layered Graph Layouts with Edge Bundling , 2010, GD.

[29]  John T. Stasko,et al.  Network-based visual analysis of tabular data , 2011, 2011 IEEE Conference on Visual Analytics Science and Technology (VAST).

[30]  Andrew E. Johnson,et al.  Visualizing the Evolution of Community Structures in Dynamic Social Networks , 2011, Comput. Graph. Forum.

[31]  Ulrik Brandes,et al.  Asymmetric Relations in Longitudinal Social Networks , 2011, IEEE Transactions on Visualization and Computer Graphics.

[32]  Edward M. Reingold,et al.  Graph drawing by force‐directed placement , 1991, Softw. Pract. Exp..

[33]  Jean-Daniel Fekete,et al.  MatLink: Enhanced Matrix Visualization for Analyzing Social Networks , 2007, INTERACT.

[34]  Innar Liiv,et al.  Seriation and matrix reordering methods: An historical overview , 2010, Stat. Anal. Data Min..

[35]  S. Wasserman,et al.  Social Network Analysis: Computer Programs , 1994 .

[36]  Satoru Kawai,et al.  An Algorithm for Drawing General Undirected Graphs , 1989, Inf. Process. Lett..

[37]  Igor Jurisica,et al.  The FlowVizMenu and Parallel Scatterplot Matrix: Hybrid Multidimensional Visualizations for Network Exploration , 2010, IEEE Transactions on Visualization and Computer Graphics.

[38]  Ayellet Tal,et al.  Multi-Level Graph Layout on the GPU , 2007, IEEE Transactions on Visualization and Computer Graphics.

[39]  Jean-Daniel Fekete,et al.  Author Manuscript, Published in "sigchi Conference on Human Factors in Computing Systems Topology-aware Navigation in Large Networks , 2022 .

[40]  Jarke J. van Wijk,et al.  Visual Analysis of Multivariate State Transition Graphs , 2006, IEEE Transactions on Visualization and Computer Graphics.

[41]  Zeqian Sheny,et al.  Path visualization for adjacency matrices , 2007 .

[42]  Yehuda Koren,et al.  Topological Fisheye Views for Visualizing Large Graphs , 2004 .

[43]  Mitsuhiko Toda,et al.  Methods for Visual Understanding of Hierarchical System Structures , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[44]  Michael Kaufmann,et al.  Drawing graphs: methods and models , 2001 .

[45]  Hsu-Chun Yen,et al.  A new force-directed graph drawing method based on edge-edge repulsion , 2005, Ninth International Conference on Information Visualisation (IV'05).

[46]  M. Sheelagh T. Carpendale,et al.  Exploring the design space of interactive link curvature in network diagrams , 2012, AVI.

[47]  Michael Schroeder,et al.  Unraveling Protein Networks with Power Graph Analysis , 2008, PLoS Comput. Biol..

[48]  Chris North,et al.  A Comparison of User-Generated and Automatic Graph Layouts , 2009, IEEE Transactions on Visualization and Computer Graphics.

[49]  Michael J. McGuffin,et al.  Interactive visualization of genealogical graphs , 2005, IEEE Symposium on Information Visualization, 2005. INFOVIS 2005..

[50]  David Auber,et al.  Tulip - A Huge Graph Visualization Framework , 2004, Graph Drawing Software.

[51]  Christophe Hurter,et al.  Skeleton-Based Edge Bundling for Graph Visualization , 2011, IEEE Transactions on Visualization and Computer Graphics.

[52]  Kwan-Liu Ma,et al.  Path Visualization for Adjacency Matrices , 2007, EuroVis.

[53]  Carl T. Bergstrom,et al.  Mapping Change in Large Networks , 2008, PloS one.

[54]  Yehuda Koren,et al.  Graph Drawing by Stress Majorization , 2004, GD.

[55]  M. Sheelagh T. Carpendale,et al.  Supporting interactive graph exploration using edge plucking , 2007, Electronic Imaging.

[56]  Guy Melançon,et al.  The Tulip 3 Framework: A Scalable Software Library for Information Visualization Applications Based on Relational Data , 2012 .

[57]  PererAdam,et al.  “Search, Show Context, Expand on Demand” , 2009 .

[58]  Ivan Herman,et al.  Graph Visualization and Navigation in Information Visualization: A Survey , 2000, IEEE Trans. Vis. Comput. Graph..

[59]  Erkki Mäkinen,et al.  The Barycenter Heuristic and the Reorderable Matrix , 2005, Informatica.

[60]  M. Sheelagh T. Carpendale,et al.  A set of multi-touch graph interaction techniques , 2010, ITS '10.

[61]  Marti A. Hearst,et al.  Animated exploration of dynamic graphs with radial layout , 2001, IEEE Symposium on Information Visualization, 2001. INFOVIS 2001..

[62]  Steven J. M. Jones,et al.  Circos: an information aesthetic for comparative genomics. , 2009, Genome research.

[63]  Wolfgang Stuerzlinger,et al.  The effect of animation, dual view, difference layers, and relative re-layout in hierarchical diagram differencing , 2011, Graphics Interface.

[64]  Frank van Ham,et al.  “Search, Show Context, Expand on Demand”: Supporting Large Graph Exploration with Degree-of-Interest , 2009, IEEE Transactions on Visualization and Computer Graphics.

[65]  John Scott What is social network analysis , 2010 .

[66]  Raimund Dachselt,et al.  Investigating multi-touch and pen gestures for diagram editing on interactive surfaces , 2009, ITS '09.

[67]  Michael J. McGuffin,et al.  TreeMatrix: A Hybrid Visualization of Compound Graphs , 2012, Comput. Graph. Forum.

[68]  Alessandro Vespignani,et al.  K-core Decomposition: a Tool for the Visualization of Large Scale Networks , 2005, ArXiv.

[69]  Andreas Ludwig,et al.  A Fast Adaptive Layout Algorithm for Undirected Graphs , 1994, GD.

[70]  Daniel W. Archambault,et al.  Difference Map Readability for Dynamic Graphs , 2010, GD.

[71]  Daniel W. Archambault,et al.  Animation, Small Multiples, and the Effect of Mental Map Preservation in Dynamic Graphs , 2011, IEEE Transactions on Visualization and Computer Graphics.

[72]  Jean-Daniel Fekete,et al.  Task taxonomy for graph visualization , 2006, BELIV '06.

[73]  P. Shannon,et al.  Cytoscape: a software environment for integrated models of biomolecular interaction networks. , 2003, Genome research.

[74]  Benjamin Watson,et al.  Developing and Evaluating Quilts for the Depiction of Large Layered Graphs , 2011, IEEE Transactions on Visualization and Computer Graphics.

[75]  Yehuda Koren,et al.  Improved Circular Layouts , 2006, GD.

[76]  Nathalie Henry,et al.  Exploring large social networks with matrix-based representations , 2008 .

[77]  Jean-Daniel Fekete,et al.  An extended evaluation of the readability of tapered, animated, and textured directed-edge representations in node-link graphs , 2011, 2011 IEEE Pacific Visualization Symposium.