Using a significant spanning tree to draw a directed graph

Martin Harrigan, Patrick Healy

Research output: Contribution to journalArticlepeer-review

Abstract

A directed graph can model any ordered relationship between objects. However, visualizing such graphs can be a challenging task. If the graph is undirected, a popular strategy is to choose a significant spanning tree, nominate a vertex as the root, for example the vertex whose distance from all other vertices is minimal, hang the significant spanning subtrees from this root and add in the remaining edges in some unobtrusive man- ner [19, 26, 27, 33]. In the directed case the spanning tree is a tree DAG and not simply a directed tree with one appropriate root. It may have multiple sources that all warrant root status and so the undirected ap- proach must be modified somewhat. In this paper, we present a method of drawing directed graphs that emphasizes a significant spanning tree. It combines two steps of the Sugiyama framework [31] (leveling and crossing minimization) by finding, in linear time, a leveling of the graph that is level planar with respect to some spanning tree and restricting the permu- tations of the vertices on each level to those that constitute a level planar embedding of this subgraph. The edges of the spanning tree will therefore not cross each other. Using a globally oriented Fiedler vector we choose permutations of the vertices on each level that reduce the number of edge crossings between the remaining edges.

Original languageEnglish
Pages (from-to)293-317
Number of pages25
JournalJournal of Graph Algorithms and Applications
Volume12
Issue number3
DOIs
Publication statusPublished - 2008

Fingerprint

Dive into the research topics of 'Using a significant spanning tree to draw a directed graph'. Together they form a unique fingerprint.

Cite this