Skip to main content

Technical Foundations

  • Chapter
Graph Drawing Software

Part of the book series: Mathematics and Visualization ((MATHVISUAL))

Abstract

Graph drawing software relies on a variety of mathematical results, mainly in graph theory, topology, and geometry, as well as computer science techniques, mainly in the areas algorithms and data structures, software engineering, and user interfaces. Many of the core techniques used in automatic graph drawing come from the intersection of mathematics and computer science in combinatorial and continuous optimization.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Barth, W., Jünger, M., Mutzel, P. (2002) Simple and efficient bilayer cross counting. In: M. Goodrich and S. Kobourov (eds.) Graph Drawing’ 02, Lecture Notes in Computer Science 2528, Springer-Verlag, 130–141

    Google Scholar 

  2. Batini, C, Nardelli, E., Tamassia, R. (1986) A layout algorithm for data flow diagrams. IEEE Transactions on Software Engineering SE-12(4), 538–546

    Article  Google Scholar 

  3. Bertolazzi, P., Di Battista, G., Didimo, W. (1998) Quasi-upward planarity. In: S. H. Whitesides (ed.) Graph Drawing’ 98, Lecture Notes in Computer Science 1547, Springer-Verlag, 15–29

    Google Scholar 

  4. Bertolazzi, P., Di Battista, G., Didimo, W. (2000) Computing orthogonal drawings with the minimum number of bends. IEEE Transactions on Computers 49(8), 826–840

    Article  Google Scholar 

  5. Bertolazzi, P., Di Battista, G., Liotta, G., Mannino, C. (1994) Upward drawings of triconnected digraphs. Algorithmica 6(12), 476–497

    Article  Google Scholar 

  6. Bertolazzi, P., Di Battista, G., Mannino, C, Tamassia, R. (1998) Optimal upward planarity testing of single-source digraphs. SIAM Journal on Computing 27, 132–169

    Article  MathSciNet  MATH  Google Scholar 

  7. Booth, K., Lueker, G. (1976) Testing for the consecutive ones property, interval graphs, and graph planarity using PQ-tree algorithms. Journal of Computer and System Sciences 13, 335–379

    Article  MathSciNet  MATH  Google Scholar 

  8. Brandenburg, F. J., Himsolt, M., Rohrer, C. (1996) An experimental comparison of force-directed and randomized graph drawing algorithms. In: F.-J. Brandenburg (ed.) Graph Drawing’ 95, Lecture Notes in Computer Science 1027, Springer-Verlag, 76–87

    Google Scholar 

  9. Brandes, U. (2001) Drawing on Physical Analogies. In: M. Kaufmann and D. Wagner (eds.) Drawing Graphs, Lecture Notes in Computer Science 2025, Springer-Verlag, 71–86

    Google Scholar 

  10. Brandes, U., Köpf, B. (2002) Fast and simple horizontal coordinate assignment. In: P. Mutzel, M. Jünger, S. Leipert (eds.) Graph Drawing’ 01, Lecture Notes in Computer Science 2265, Springer-Verlag, 31–44

    Google Scholar 

  11. Brandes, IL, Wagner, D. (2000) Using graph layout to visualize train interconnection data. J. Graph Algorithms and Applications 4(3), 135–155

    Article  MATH  Google Scholar 

  12. Bridgeman, S., Di Battista, G., Didimo, W., Liotta, G., Tamassia, R., Vismara, L. (2000) Turn-regularity and optimal area drawings of orthogonal representations. Computational Geometry: Theory and Applications, 16, 53–93

    Article  MathSciNet  MATH  Google Scholar 

  13. Bruß, I., Frick, A. (1996) Fast interactive 3-D graph visualization. In: F.-J. Brandenburg (ed.) Graph Drawing’ 95, Lecture Notes in Computer Science 1027, Springer-Verlag, 99–110

    Google Scholar 

  14. Buchheim, C, Jünger, M., Leipert, S. (2001) A fast layout algorithm for k-level graphs. In: J. Marks (ed.) Graph Drawing’ 00, Lecture Notes in Computer Science 1984, Springer-Verlag, 229–240

    Google Scholar 

  15. Buchheim, C, Jünger, M., Leipert, S. (2002) Improving Walker’s algorithm to run in linear time. In: M. Goodrich and S. Kobourov (eds.) Graph Drawing’ 02, Lecture Notes in Computer Science 2528, Springer-Verlag, 344–353

    Google Scholar 

  16. Cai, J., Han, X., Tarjan, R. E. (1993) An O(mlog n)-time algorithm for the maximal planar subgraph problem. SIAM Journal on Computing 22, 1142–1164

    Article  MathSciNet  MATH  Google Scholar 

  17. Chiba, N., Nishizeki, T., Abe, S., Ozawa T. (1985) A linear algorithm for embedding planar graphs using PQ-trees. Journal of Computer System Science 30(1), 54–76

    Article  MathSciNet  MATH  Google Scholar 

  18. Cook, W. J., Cunningham, W. H., Pulleyblank, W. R., Schrijver, A. (1998) Combinatorial Optimization. John Wiley & Sons

    Google Scholar 

  19. Coffman, E. G., Graham, R. L. (1972) Optimal scheduling for two processor systems. Acta Informatica 1, 200–213

    Article  MathSciNet  Google Scholar 

  20. Cruz, I. F., and Twarog, J. P. (1996) 3D Graph Drawing with simulated annealing. In: F.-J. Brandenburg (ed.) Graph Drawing’ 95, Lecture Notes in Computer Science 1027, Springer-Verlag, 162–165

    Google Scholar 

  21. Dahlhaus, E. (1998) A linear time algorithm to recognize clustered graphs and its parallelization. In: C. L. Lucchesi and A. V. Moura (eds.) Latin’ 98, Lecture Notes in Computer Science 1380, Springer-Verlag, 239–248

    Google Scholar 

  22. Davidson, R., Harel, D. (1996) Drawing graphs nicely using simulated annealing. ACM Transactions on Graphics 15, 301–331

    Article  Google Scholar 

  23. Di Battista, G., Eades, P., Tamassia, R., Tollis, I. G. (1999) Graph Drawing: Algorithms for the visualization of graphs. Prentice Hall, New Jersey

    MATH  Google Scholar 

  24. Di Battista, G., Garg, A., Liotta, G., Parise, A., Tamassia, R., Tassinari, E., Vargiu, F., Vismara, L. (1997) Drawing Directed Graphs: an Experimental Study. In: S. North (ed.) Graph Drawing’ 96, Lecture Notes in Computer Science 1190, Springer-Verlag, 76–91

    Google Scholar 

  25. Di Battista, G., Garg, A., Liotta, G., Tamassia, R., Tassinari, E., Vargiu, F. (1997) Computational Geometry: Theory and Applications 7, 303–316

    Article  MathSciNet  MATH  Google Scholar 

  26. Di Battista, G., Didimo, W., Patrignani, M., Pizzonia M. (1999) Orthogonal and quasiupward drawings with vertices of arbitrary size. In: J. Kratochvil (ed.) Graph Drawing’ 99, Lecture Notes in Computer Science 1731, Springer-Verlag, 297–310

    Google Scholar 

  27. Djidjev, H. N. (1995) A linear algorithm for the maximal planar subgraph problem. In: Proceedings of the 4th Workshop Algorithms Data Struct., Lecture Notes in Computer Science, Springer-Verlag

    Google Scholar 

  28. Eades, P. (1984) A heuristic for Graph Drawing. Congressus Numerantium 42, 149–160

    MathSciNet  Google Scholar 

  29. Eades, P. (1992) Drawing free trees. Bulletin of the Institute for Combinatorics and its Applications 5, 10–36

    MathSciNet  MATH  Google Scholar 

  30. Eades, P., Lin, X., Smyth, W. F. (1993) A fast and effective heuristic for the feedback arc set problem. Information Processing Letters 47, 319–323

    Article  MathSciNet  MATH  Google Scholar 

  31. Eades, P., Wormald, N. (1994) Edge crossings in drawings of bipartite graphs. Algorithmica 11, 379–403

    Article  MathSciNet  MATH  Google Scholar 

  32. Eades, P., Cohen, R. F., Huang, M. L. (1997) Online animated Graph Drawing for web animation. In: G. Di Battista (ed.) Graph Drawing’ 97, Lecture Notes in Computer Science 1353, Springer-Verlag, 330–335

    Google Scholar 

  33. Elf, M., Gutwenger, C, Jünger, M., Rinaldi, G. (2001) Branch-and-cut algorithms and their implementation in ABACUS. In: M. Jünger and D. Naddef (eds.) Computational Combinatorial Optimization, Lecture Notes in Computer Science 2241, Springer-Verlag, 157–222

    Google Scholar 

  34. Euler, L. (1750) Demonstratio nonnullarum insignium proprietatum quibus solida hedris planis inclusa sunt praedita. Novi Comm. Acad. Sei. Imp. Petropol. 4 (1752–3, published 1758), 140–160, also: Opera Omnia (1) 26, 94–108

    Google Scholar 

  35. Feng, Q. W., Cohen, R. F., Eades, P. (1995) Planarity for clustered graphs. In: P Spirakis (ed.) Algorithms — ESA’ 95, Lecture Notes in Computer Science 979, Springer-Verlag, 213–226

    Google Scholar 

  36. Fößmeier, U., Kaufmann, M. (1996) Drawing high degree graphs with low bend numbers. In: F. J. Brandenburg (ed.) Graph Drawing’ 95, Lecture Notes in Computer Science 1027, Springer-Verlag, 254–266

    Google Scholar 

  37. Frick, A., Ludwig, A., Mehldau, H. (1995) A fast adaptive layout algorithm for undirected graphs. In: R. Tamassia and I. G. Tollis (eds.) Graph Drawing’ 94, Lecture Notes in Computer Science 894, Springer-Verlag, 388–403

    Google Scholar 

  38. Fruchtermann, T. M. J., Reingold, E. M. (1991) Graph Drawing by force-directed placement. Software — Practice and Experience 21, 1129–1164

    Article  Google Scholar 

  39. Garey, M. R., Johnson, D. S. (1983) Crossing number is NP-complete. SIAM J. Algebraic Discrete Methods 4, 312–316

    Article  MathSciNet  MATH  Google Scholar 

  40. Gansner, E. R., Koutsofios, E., North, S. C, Vo, K. P. (1993) A technique for drawing directed graphs. IEEE Transactions on Software Engineering 19, 214–230

    Article  Google Scholar 

  41. Garg, A., Tamassia, R. (1995) On the computational complexity of upward and rectilinear planarity testing. In: R. Tamassia and I. G. Tollis (eds.) Graph Drawing’ 94, Lecture Notes in Computer Science 894, Springer-Verlag, 286–297

    Google Scholar 

  42. Garg, A., Tamassia, R. (1997) A New Minimum Cost Flow Algorithm with Applications to Graph Drawing. In: S. North (ed.) Graph Drawing’ 96, Lecture Notes in Computer Science 1190, Springer-Verlag, 201–216

    Google Scholar 

  43. Gutwenger, C, Mutzel, P., Weiskircher, R. (2001) Inserting an edge into a planar graph. In: Proceedings of the Ninth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2001), ACM Press, 246–255

    Google Scholar 

  44. Healy, P., Kuusik, A. (1999) The vertex-exchange graph: a new concept for multi-level crossing minimization. In: J. Kratochvil (ed.) Graph Drawing’ 99, Lecture Notes in Computer Science 1731, Springer-Verlag, 205–216

    Google Scholar 

  45. Hopcroft, J., Tarjan, R. E. (1974) Efficient planarity testing. Journal of the ACM 21, 549–568

    Article  MathSciNet  MATH  Google Scholar 

  46. Jayakumar, R., Thulasiraman, K., Swamy, M. N. S. (1989) O(n 2) algorithms for graph planarization. IEEE Transactions on Computer Aided Design 8, 257–267

    Article  Google Scholar 

  47. Jünger, M., Leipert, S., Mutzel, P. (1998) A note on computing a maximal planar subgraph using PQ-trees. IEEE Transactions of Computer-Aided Design and Integrated Circuits and Systems 17, 609–612

    Article  Google Scholar 

  48. Jünger, M., Mutzel, P. (1996) Maximum planar subgraphs and nice embeddings: practical layout tools. Algorithmica 16, 33–59

    MATH  Google Scholar 

  49. Jünger, M., Mutzel, P. (1997) 2-layer straight line crossing minimization: performance of exact and heuristic algorithms. Journal of Graph Algorithms and Applications 1, 1–25

    Article  MathSciNet  Google Scholar 

  50. Jünger, M., Reinelt, G., Thienel, S. (1995) Practical Problem Solving with Cutting Plane Algorithms in Combinatorial Optimization. In: W. Cook, L. Lovász, P. Seymour (eds.), DIMACS Series in Discrete Mathematics and Theoretical Computer Science, 111–152

    Google Scholar 

  51. Kamada, T., and Kawai, S. (1989) An algorithm for drawing general undirected graphs. Information Processing Letters 31, 7–15

    Article  MathSciNet  MATH  Google Scholar 

  52. Kaufmann, M., Wagner, D. (eds.) (2001) Drawing Graphs: Methods and Models. Lecture Notes in Computer Science 2025, Springer-Verlag

    Google Scholar 

  53. Klau, G. W., Klein, K., Mutzel P. (2001) An Experimental Comparison of Orthogonal Compaction Algorithms. In: J. Marks (ed.) Graph Drawing’ 00, Lecture Notes in Computer Science 1984, Springer-Verlag, 37–51

    Google Scholar 

  54. Klau, G. W., Mutzel P. (1999) Optimal compaction of orthogonal grid drawings. In: G. Cornuejols, R. E. Burkard, and G. J. Woeginger (eds.), Integer Programming and Combinatorial Optimization (IPCO’ 99), Lecture Notes in Computer Science 1610, Springer-Verlag, 304–319

    Google Scholar 

  55. Lempel, A., Even, S., Cederbaum, I. (1967) An algorithm for planarity testing of graphs. Theory of Graphs: International Symposium: Rome, July 1966, Gordon and Breach, New York, 215–232

    Google Scholar 

  56. Liu, P.C., Geldmacher, R. C. (1977) On the deletion of nonplanar edges of a graph. Proceedings of the 10th S-E Conference on Comb., Graph Theory, and Comp., Boca Raton, FL, 727–738

    Google Scholar 

  57. Mehlhorn K., Mutzel, P. (1996) On the embedding phase of the Hopcroft and Tarjan planarity testing algorithm. Algorithmica 16, 233–242

    Article  MathSciNet  MATH  Google Scholar 

  58. Mutzel, P., Weiskircher, R. (2002) Bend Minimization in Orthogonal Drawings Using Integer Programming. In: O. Ibarra and L. Zhang (eds.) Computing and Combinatorics, Eighth Annual International Conference (COCOON 2002), Lecture Notes in Computer Science 2387, Springer-Verlag, 484–493

    Google Scholar 

  59. Patrignani, M. (2001) On the complexity of orthogonal compaction. Computational Geometry: Theory and Applications 19(1), 47–67

    Article  MathSciNet  MATH  Google Scholar 

  60. Reingold, E., Tilford, J. (1981) Tidier drawing of trees. IEEE Transactions on Software Engineering 7, 223–228

    Article  Google Scholar 

  61. Sander, G. (1996) Visualisierungstechniken für den Compilerbau. Pirrot Verlag & Druck, Saarbrücken

    Google Scholar 

  62. Sugiyama, K., Tagawa, S., Toda, M. (1981) Methods for visual understanding of hierarchical system structures. IEEE Transactions on Systems, Man, and Cybernetics 11, 109–125

    Article  MathSciNet  Google Scholar 

  63. Sugiyama, K., Misue, K. (1991) Visualization of structural information: automatic drawing of compound digraphs. IEEE Transactions on Systems, Man, and Cybernetics 4(21), 876–893

    Article  MathSciNet  Google Scholar 

  64. Sugiyama, K., Misue, K. (1995) A simple and unified method for drawing graphs: magnetic-spring algorithm. In: R. Tamassia and I. G. Tollis (eds.) Graph Drawing’ 94, Lecture Notes in Computer Science 894, Springer-Verlag, 364–375

    Google Scholar 

  65. Supowit, K. J., Reingold, E. M. (1983) The complexity of drawing trees nicely. Acta Inform. 18, 377–392

    MathSciNet  MATH  Google Scholar 

  66. Tamassia, R. (1987) On embedding a graph in the grid with the minimum number of bends. SIAM Journal on Computing 16(3), 421–444

    Article  MathSciNet  MATH  Google Scholar 

  67. Tamassia, R., Di Battista, G., Batini, C. (1988) Automatic Graph Drawing and readability of diagrams. IEEE Transactions on Systems, Man, and Cybernetics 18, 61–79

    Article  Google Scholar 

  68. Tutte, W. T. (1963) How to draw a graph. Proceedings of the London Mathematical Society, Third Series 13, 743–768

    Article  MathSciNet  MATH  Google Scholar 

  69. Waddle, V., Malhotra, A. (1999) An E log E line crossing algorithm for levelled graphs. In: J. Kratochvil (ed.) Graph Drawing’ 99, Lecture Notes in Computer Science 1731, Springer-Verlag, 59–70

    Google Scholar 

  70. Walker II, J. Q. (1990) A node-positioning algorithm for general trees. Software — Practice and Experience 20, 685–705

    Article  Google Scholar 

  71. Ziegler, T. (2001) Crossing minimization in automatic Graph Drawing. Doctoral Thesis, Technische Fakultät der Universität des Saarlandes

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Jünger, M., Mutzel, P. (2004). Technical Foundations. In: Jünger, M., Mutzel, P. (eds) Graph Drawing Software. Mathematics and Visualization. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-18638-7_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-18638-7_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-62214-4

  • Online ISBN: 978-3-642-18638-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics