Volume upper bounds for 3D graph drawing

Many systems, particularly those which present relational information, include a graph drawing function. Such systems have motivated a great deal of research on algorithms for drawing graphs; a recent survey lists over 250 references. Almost all this work has been oriented toward two-dimensional drawings. This paper describes an investigation of mathematically fundamental aspects of three-dimensional graph drawing. In particular we give three results concerning the space required for three-dimensional drawings.We showhow to produce a grid drawing of an arbitrary n-vertex graph with all vertices located at integer grid point, in an n × 2n × 2n grid, such that no pair of edges cross. This grid size is optimal to within a constant. We also show how to convert an orthogonal two-dimensional drawing in a H × V integer grid to a three-dimensional drawing with ⌈√H⌉ × ⌈√H⌉ × V volume. Using this technique we show, for example, that three-dimensional drawings of binary trees can be computed with volume ⌈√n⌉ × ⌈√n⌉ × ⌈logn⌉. We give an algorithm for producing drawings of rooted trees in which the z coordinate of a node represents the depth of the node in the tree; our algorithm minimizes the footprint of the drawing, that is, the size of the projection in the xy plane.Finally, we list significant unsolved problems in algorithms for three-dimensional graph drawing.

[1]  Ioannis G. Tollis,et al.  Area requirement and symmetry display of planar upward drawings , 1992, Discret. Comput. Geom..

[2]  Sven Moen,et al.  Drawing dynamic trees , 1990, IEEE Software.

[3]  Michael T. Goodrich,et al.  Area-efficient upward tree drawings , 1993, SCG '93.

[4]  John Q. Walker,et al.  A node‐positioning algorithm for general trees , 1990, Softw. Pract. Exp..

[5]  R. Tamassia,et al.  Planar orthogonal drawings of graphs , 1990, IEEE International Symposium on Circuits and Systems.

[6]  Niklaus Wirth,et al.  Systematic Programming: An Introduction , 1974 .

[7]  E. Wright,et al.  An Introduction to the Theory of Numbers , 1939 .

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

[9]  Charles E. Leiserson,et al.  Area-Efficient Graph Layouts (for VLSI) , 1980, FOCS.

[10]  James D. Foley,et al.  Fundamentals of interactive computer graphics , 1982 .

[11]  Tao Lin,et al.  Minimum Size h-v Drawings , 1992, Advanced Visual Interfaces.

[12]  Edward M. Reingold,et al.  Tidier Drawings of Trees , 1981, IEEE Transactions on Software Engineering.

[13]  Ioannis G. Tollis,et al.  Area requirement and symmetry display in drawing graphs , 1989, SCG '89.

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

[15]  W. T. Tutte Convex Representations of Graphs , 1960 .

[16]  Tao Lin,et al.  Two Tree Drawing Conventions , 1993, Int. J. Comput. Geom. Appl..

[17]  Alberto O. Mendelzon,et al.  Visualizing and querying software structures , 1992, International Conference on Software Engineering.

[18]  Colin Ware,et al.  Visualizing object oriented software in three dimensions , 1993, CASCON.

[19]  Jean G. Vaucher Pretty‐printing of trees , 1980, Softw. Pract. Exp..

[20]  Jock D. Mackinlay,et al.  Automating the design of graphical presentations of relational information , 1986, TOGS.

[21]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[22]  Leslie G. Valiant,et al.  Universality considerations in VLSI circuits , 1981, IEEE Transactions on Computers.

[23]  Roberto Tamassia,et al.  On Embedding a Graph in the Grid with the Minimum Number of Bends , 1987, SIAM J. Comput..

[24]  Goos Kant,et al.  Drawing planar graphs using the lmc-ordering , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[25]  J. A. Bondy,et al.  Graph Theory with Applications , 1978 .

[26]  Donald E. Knuth,et al.  The Art of Computer Programming, Volume I: Fundamental Algorithms, 2nd Edition , 1997 .

[27]  Hans Albert Muller,et al.  Rigi: a model for software system construction, integration, and evolution based on module interface specifications , 1986 .

[28]  James B. Orlin,et al.  NP-Completeness for Minimizing Maximum Edge Length in Grid Embeddings , 1985, J. Algorithms.

[29]  Charles Wetherell,et al.  Tidy Drawings of Trees , 1979, IEEE Transactions on Software Engineering.

[30]  Giuseppe Di Battista,et al.  A Note on Optimal Area Algorithms for Upward Drawings of Binary Trees , 1992, Comput. Geom..