# A Multi-dimensional Approach to Force-Directed Layouts of Large Graphs

## Abstract

We present a novel hierarchical force-directed method for drawing large graphs. The algorithm produces a graph embedding in an Euclidean space E of any dimension. A two or three dimensional drawing of the graph is then obtained by projecting a higher-dimensional embedding into a two or three dimensional subspace of E. Projecting high-dimensional drawings onto two or three dimensions often results in drawings that are “smoother” and more symmetric. Among the other notable features of our approach are the utilization of a maximal independent set filtration of the set of vertices of a graph, a fast energy function minimization strategy, efficient memory management, and an intelligent initial placement of vertices. Our implementation of the algorithm can draw graphs with tens of thousands of vertices using a negligible amount of memory in less than one minute on a mid-range PC.

### References

- 1.A. Brandt. Multilevel computations of integral transforms and particle interactions with oscillatory kernels.
*Computer Physics Communications*, 65:24–38, 1991.MATHCrossRefMathSciNetGoogle Scholar - 2.A. Brandt. Multigrid methods in lattice field computations.
*Nucl. Phys. B*, 26:137–180, 1992. Proc. Suppl.MathSciNetCrossRefGoogle Scholar - 3.I. Bruß and A. Frick. Fast interactive 3-D graph visualization. In Graph Drawing (Proc. GD’ 95), pages 99–110, 1995.Google Scholar
- 4.R. Davidson and D. Harel. Drawing graphics nicely using simulated annealing.
*ACM Trans. Graph.*, 15(4):301–331, 1996.CrossRefGoogle Scholar - 5.G. Di Battista, P. Eades, R. Tamassia, and I. G. Tollis. Algorithms for drawing graphs: an annotated bibliography.
*Computational Geometry: Theory and Applications*, 4:235–282, 1994.MATHMathSciNetGoogle Scholar - 6.G. Di Battista, P. Eades, R. Tamassia, and I. G. Tollis.
*Graph Drawing: Algorithms for the Visualization of Graphs*. Prentice Hall, Englewood Cliffs, NJ, 1999.MATHGoogle Scholar - 7.C. A. Duncan, M. T. Goodrich, and S. G. Kobourov. Balanced aspect ratio trees and their use for drawing very large graphs. In
*Proceedings of the 6th Symposium on Graph Drawing*, pages 111–124, 1998.Google Scholar - 8.P. Eades. A heuristic for graph drawing.
*Congressus Numerantium*, 42:149–160, 1984.MathSciNetGoogle Scholar - 9.P. Eades and Q. Feng. Multilevel visualization of clustered graphs. In
*Proceedings of the 4th Symposium on Graph Drawing (GD’ 96)*, pages 101–112, 1996.Google Scholar - 10.P. Eades, Q. Feng, and X. Lin. Straight-line drawing algorithms for hierarchical graphs and clustered graphs. In
*Proceedings of the 4th Symposium on Graph Drawing (GD’ 96)*, pages 113–128, 1996.Google Scholar - 11.Q. Feng, R. F. Cohen, and P. Eades. How to draw a planar clustered graph. In
*Procs. of the 1st Annual International Conference on Computing and Combinatorics (COCOON’ 95)*, pages 21–31, 1995.Google Scholar - 12.A. Frick, A. Ludwig, and H. Mehldau. A fast adaptive layout algorithm for undirected graphs. In R. Tamassia and I. G. Tollis, editors,
*Graph Drawing (Proc. GD’ 94)*, LNCS 894, pages 388–403, 1995.Google Scholar - 13.T. Fruchterman and E. Reingold. Graph drawing by force-directed placement. Softw.-Pract. Exp., 21(11):1129–1164, 1991.CrossRefGoogle Scholar
- 14.G. W. Furnas. Generalized fisheye views. In
*Proceedings of ACM Conference on Human Factors in Computing Systems (CHI’ 86)*, pages 16–23, 1986.Google Scholar - 15.P. Gajer and S. G. Kobourov. GRIP: Graph dRawing with Intelligent Placement. In
*To appear in Proceedings of the 8th Symposium on Graph Drawing*, 2000.Google Scholar - 16.R. Hadany and D. Harel. A multi-scale algorithm for drawing graphs nicely. In
*Proc. 25th International Workshop on Graph Teoretic Concepts in Computer Science (WG’99)*, 1999.Google Scholar - 17.D. Harel and Y. Koren. A fast multi-scale method for drawing large graphs. Technical Report MCS99-21, The Weizmann Institute of Science, Rehovot, Israel, 1999.Google Scholar
- 18.T. Kamada and S. Kawai. Automatic display of network structures for human understanding. Technical Report 88-007, Department of Information Science, University of Tokyo, 1988.Google Scholar
- 19.K. Kaugars, J. Reinfelds, and A. Brazma. A simple algorithm for drawing large graphs on small screens. In
*Graph Drawing (GD’ 94)*, pages 278–281, 1995.Google Scholar - 20.S. C. North. Drawing ranked digraphs with recursive clusters. In
*Graph Drawing 93, Proceedings of the First International Workshop on Graph Drawing*, Sept. 1993.Google Scholar - 21.N. Quinn and M. Breur. A force directed component placement procedure for printed circuit boards.
*IEEE Transactions on Circuits and Systems*, CAS-26(6):377–388, 1979.CrossRefGoogle Scholar - 22.M. Sarkar and M. H. Brown. Graphical fisheye views.
*Communications of the ACM*, 37(12):73–84, 1994.CrossRefGoogle Scholar - 23.K. Sugiyama and K. Misue. Visualization of structural information: Automatic drawing of compound digraphs.
*IEEE Transactions on Systems, Man, and Cybernetics*, 21(4):876–892, 1991.CrossRefMathSciNetGoogle Scholar