Directed Graphs by Clan-Based Decomposition

This paper presents a system for automatically drawing directed graphs by using a graphanalysis that decomposes a graph into modules we call clans. Our system, CG (Clan-based Graph Drawing Tool), uses a unique clan-based graph decomposition to determine intrinsic subgraphs (clans) in the original graph and to produce a parse tree. The tree is given attributes that specify the node layout. CG then uses tree properties with the addition of “routing nodes” to route the edges. The objective of the system is to provide, automatically, an aesthetically pleasing visual layout for arbitrary directed graphs. Using the clan-based decomposition, CG's drawings are unique in several ways: (1)The node layout can be balanced both vertically and horizontally; (2) Nodes within a clan, a subgraph of nodes that have a common relationship with the rest of the nodes in the graph, are placed close to each other in the drawing; (3) Nodes are grouped according to a two-dimensional affinity rather than a single dimension such as level or rank [13]; (4) The users can contract a clan into a single node and later expand the node to show the subgraph in its original clan; and (5) Crossings reduction processing by clan-based graph decomposition is faster than Sugiyama, Tagawa, and Toda [20, 21] barycentric ordering algorithm.

[1]  K. P. Vo,et al.  DAG—a program that draws directed graphs , 1988, Softw. Pract. Exp..

[2]  Ioannis G. Tollis,et al.  Algorithms for Drawing Graphs: an Annotated Bibliography , 1988, Comput. Geom..

[3]  Kristy Andrews,et al.  Design and implementation of the UW Illustrated compiler , 1988, PLDI '88.

[4]  John N. Warfield,et al.  Crossing Theory and Hierarchy Mapping , 1977, IEEE Transactions on Systems, Man, and Cybernetics.

[5]  Marie-Jose Carpano,et al.  Automatic Display of Hierarchized Graphs for Computer-Aided Decision Analysis , 1980, IEEE Transactions on Systems, Man, and Cybernetics.

[6]  Carolyn McCreary,et al.  CG: a Graph Drawing System Using Graph-Grammar Parsing , 1994, GD.

[7]  James H. Cross,et al.  Reverse Engineering Graphical Representations of X Source Code , 1996, Int. J. Softw. Eng. Knowl. Eng..

[8]  Robert H. Henry,et al.  Automatic layout of large directed graphs , 1988 .

[9]  Edgar F. Borgatta,et al.  Sociological Methodology, 1969. , 1969 .

[10]  Andrzej Ehrenfeucht,et al.  Theory of 2-Structures, Part II: Representation Through Labeled Tree Families , 1990, Theor. Comput. Sci..

[11]  Lc Freeman,et al.  USING GALOIS LATTICES TO REPRESENT NETWORK DATA , 1993 .

[12]  Emden R. Gansner,et al.  A Technique for Drawing Directed Graphs , 1993, IEEE Trans. Software Eng..

[13]  Lawrence A. Rowe,et al.  A divide-and-conquer algorithm for the automatic layout of large directed graphs , 1991, IEEE Trans. Syst. Man Cybern..

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

[15]  Carlo Batini,et al.  Automatic graph drawing and readability of diagrams , 1988, IEEE Trans. Syst. Man Cybern..

[16]  C. L. McCreary,et al.  A Graph Parsing Algorithm and Implementation , 1993 .

[17]  Lawrence A. Rowe,et al.  A browser for directed graphs , 1987, Softw. Pract. Exp..

[18]  Andrzej Ehrenfeucht,et al.  Theory of 2-Structures, Part I: Clans, Basic Subclasses, and Morphisms , 1990, Theor. Comput. Sci..