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

  • Pawel Gajer
  • Michael T. Goodrich
  • Stephen G. Kobourov
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1984)

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. 1.
    A. Brandt. Multilevel computations of integral transforms and particle interactions with oscillatory kernels. Computer Physics Communications, 65:24–38, 1991.MATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    A. Brandt. Multigrid methods in lattice field computations. Nucl. Phys. B, 26:137–180, 1992. Proc. Suppl.MathSciNetCrossRefGoogle Scholar
  3. 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. 4.
    R. Davidson and D. Harel. Drawing graphics nicely using simulated annealing. ACM Trans. Graph., 15(4):301–331, 1996.CrossRefGoogle Scholar
  5. 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. 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. 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. 8.
    P. Eades. A heuristic for graph drawing. Congressus Numerantium, 42:149–160, 1984.MathSciNetGoogle Scholar
  9. 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. 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. 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. 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. 13.
    T. Fruchterman and E. Reingold. Graph drawing by force-directed placement. Softw.-Pract. Exp., 21(11):1129–1164, 1991.CrossRefGoogle Scholar
  14. 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. 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. 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. 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. 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. 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. 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. 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. 22.
    M. Sarkar and M. H. Brown. Graphical fisheye views. Communications of the ACM, 37(12):73–84, 1994.CrossRefGoogle Scholar
  23. 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

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Pawel Gajer
    • 1
  • Michael T. Goodrich
    • 1
  • Stephen G. Kobourov
    • 2
  1. 1.Department of Computer ScienceJohns Hopkins UniversityBaltimore
  2. 2.Department of Computer ScienceUniversity of ArizonaTucson

Personalised recommendations