Skip to main content

Graph Drawing Algorithm Engineering with AGD

  • Conference paper
  • First Online:
Software Visualization

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2269))

Abstract

We discuss the algorithm engineering aspects of AGD, a software library of algorithms for graph drawing. AGD represents algorithms as classes that provide one or more methods for calling the algorithm. There is a common base class, also called the type of an algorithm, for algorithms providing basically the same functionality. This enables us to exchange components and experiment with various algorithms and implementations of the same type. We give examples for algorithm engineering with AGD for drawing general non-hierarchical graphs and hierarchical graphs.

This work is partially supported by DFG-Grant Mu 1129/3-2 and Ju 204/7-4 Forschungsschwerpunkt “Effiziente Algorithmen für diskrete Probleme und ihre Anwendungen”.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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. S. Bridgeman, G. Di Battista, W. Didimo, G. Liotta, R. Tamassia, and L. Vismara. Turn-regularity and optimal area drawings for orthogonal representations. Computational Geometry Theory and Applications (CGTA), 2000. To appear.

    Google Scholar 

  2. C. Buchheim, M. Jünger, and S. Leipert. A fast layout algorithm for klevel graphs. In J. Marks, editor, Graph Drawing 2000, volume 1984 of LNCS, pages 229–240. Springer-Verlag, 2000.

    Chapter  Google Scholar 

  3. C. Batini, E. Nardelli, and R. Tamassia. A layout algorithm for data-flow diagrams. IEEE Trans. Soft. Eng., SE-12(4):538–546, 1986.

    Google Scholar 

  4. C. Batini, M. Talamo, and R. Tamassia. Computer aided layout of entity relationship diagrams. J. Syst. and Softw., 4:163–173, 1984.

    Article  Google Scholar 

  5. E. G. Coffman and R. L. Graham. Optimal scheduling for two processor systems. Acta Informatica, 1:200–213, 1972.

    Article  MathSciNet  Google Scholar 

  6. M. Chrobak and G. Kant. Convex grid drawings of 3-connected planar graphs. Internat. Journal on Computational Geometry and Applications, 7(3):211–224, 1997.

    Article  MathSciNet  Google Scholar 

  7. H. De Fraysseix, J. Pach, and R. Pollack. How to draw a planar graph on a grid. Combinatorica, 10(1):41–51, 1990.

    Article  MATH  MathSciNet  Google Scholar 

  8. G. Di Battista and R. Tamassia. On-line planarity testing. SIAM J. Comput., 25(5):956–997, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  9. G. Di Battista, R. Tamassia, and I. G. Tollis. Area requirement and symmetry display of planar upward drawings. Discrete Comput. Geom., 7:381–401, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  10. P. Eades and D. Kelly. Heuristics for reducing crossings in 2-layered networks. Ars Combinatoria, 21(A):89–98, 1986.

    MathSciNet  Google Scholar 

  11. P. Eades and X. Lin. A new heuristic for the feedback arc set problem. Australian Journal of Combinatorics, 12:15–26, 1995.

    MATH  MathSciNet  Google Scholar 

  12. P. Eades and P. Mutzel. Graph drawing algorithms. In M. Atallah, editor, CRC Handbook of Algorithms and Theory of Computation, chapter 9, pages 9–1–9–26. CRC Press, 1999.

    Google Scholar 

  13. P. Eades and N. Wormald. The median heuristic for drawing 2-layers networks. Technical Report69, Dept. of Comp. Sci., University of Queensland, 1986.

    Google Scholar 

  14. S. Fialko. Das planare Augmentierungsproblem. Master’s thesis, Universität des Saarlandes, Saarbrücken, 1997.

    Google Scholar 

  15. U. Fößmeier and M. Kaufmann. Drawing high degree graphs with low bend numbers. In F.J. Brandenburg, editor, Graph Drawing '95), volume 1027 of LNCS, pages 254–266. Springer, 1996.

    Chapter  Google Scholar 

  16. S. Fialko and P. Mutzel. A new approximation algorithm for the planar augmentation problem. In Proceedings of the Ninth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA '98), pages 260–269, San Francisco, California, 1998. ACM Press.

    Google Scholar 

  17. T. Fruchterman and E. Reingold. Graph drawing by force-directed placement. Softw.-Pract. Exp., 21(11):1129–1164, 1991.

    Article  Google Scholar 

  18. Graph Drawing Toolkit: An object-oriented library for handling and drawing graphs. http://www.dia.uniroma3.it/~gdt.

  19. M. Grötschel, M. Jünger, and G. Reinelt. On the acyclic subgraph polytope. Mathematical Programming, 33:28–42, 1985.

    Article  MATH  MathSciNet  Google Scholar 

  20. E. R. Gansner, E. Koutsofios, S. C. North, and K. P. Vo. A technique for drawing directed graphs. IEEE Trans. Softw. Eng., 19(3):214–230, 1993.

    Article  Google Scholar 

  21. C. Gutwenger and P. Mutzel. Grid embedding of biconnected planar graphs. Extended Abstract, Max-Planck-Institut für Informatik, Saarbrücken, Germany, 1997.

    Google Scholar 

  22. C. Gutwenger and P. Mutzel. Planar polyline drawings with good angular resolution. In S. Whitesides, editor, Graph Drawing '98, volume 1547 of LNCS, pages 167–182. Springer-Verlag, 1998.

    Chapter  Google Scholar 

  23. C. Gutwenger and P. Mutzel. A linear-time implementation of SPQRtrees. In J. Marks, editor, Graph Drawing 2000, volume 1984 of LNCS, pages 77–90. Springer-Verlag, 2000.

    Chapter  Google Scholar 

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

    Google Scholar 

  25. N. Gelfand and R. Tamassia. Algorithmic patterns for orthogonal graph drawing. In S. Whitesides, editor, Graph Drawing '98, volume 1547 of LNCS, pages 138–152. Springer-Verlag, 1998.

    Chapter  Google Scholar 

  26. M. Himsolt. GML: A portable graph file format. Technical report, Universit ät Passau, 1997. See also http://www.uni-passau.de/Graphlet/GML.

  27. M. Jünger, S. Leipert, and P. Mutzel. A note on computing a maximal planar subgraph using PQ-trees. IEEE Trans. on Computer-Aided Design, 17(7), 1998.

    Google Scholar 

  28. M. Jünger and P. Mutzel. The polyhedral approach to the maximum planar subgraph problem: New chances for related problems. In DIMACS Graph Drawing '94, volume 894 of LNCS, pages 119–130. Springer-Verlag, 1994.

    Google Scholar 

  29. M. Jünger and P. Mutzel. 2-layer straightline crossing minimization: Performance of exact and heuristic algorithms. J. Graph Algorithms and Applications (JGAA) (http://www.cs.brown.edu/publications/jgaa/), 1(1):1–25, 1996.

    Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

  31. M. Jünger and S. Thienel. The ABACUS system for branch-and-cut and price algorithms in integer programming and combinatorial optimization. Software-Practice and Experience, 30:1325–1352, 2000.

    Article  MATH  Google Scholar 

  32. G. Kant. Drawing planar graphs using the canonical ordering. Algorithmica, Special Issue on Graph Drawing, 16(1):4–32, 1996.

    MATH  MathSciNet  Google Scholar 

  33. G. W. Klau, K. Klein, and P. Mutzel. An experimental comparison of orthogonal compaction algorithms. In Graph Drawing (Proc. 2000), LNCS. Springer Verlag, 2001.

    Google Scholar 

  34. G. Klau and P. Mutzel. Quasi-orthogonal drawing of planar graphs. Technical Report MPI-I-98-1-013, Max-Planck-Institut f. Informatik, Saarbrücken, 1998.

    Google Scholar 

  35. G. W. Klau and P. Mutzel. Optimal compaction of orthogonal grid drawings. In G. P. Cornuéjols, R. E. Burkard, and G. J. Woeginger, editors, Integer Programming and Combinatorial Optimization (IPCO '99), volume 1610 of LNCS, pages 304–319. Springer, 1999.

    Chapter  Google Scholar 

  36. T. Lengauer. Combinatorial Algorithms for Integrated Circuit Layout. John Wiley & Sons, New York, 1990.

    Google Scholar 

  37. K. Mehlhorn and S. Näher. The LEDA Platform of Combinatorial and Geometric Computing. Cambridge University Press, 1999.

    Google Scholar 

  38. C. Matuszewski, R. Schönfeld, and P. Molitor. Using sifting for k-layer crossing minimization. In J. Kratochvil, editor, Graph Drawing '99, volume 1731 of LNCS, pages 217–224. Springer-Verlag, 1999.

    Chapter  Google Scholar 

  39. P. Mutzel. A polyhedral approach to planar augmentation and related problems. In Paul Spirakis, editor, Annual European Symposium on Algorithms (ESA-3): Corfu, Greece, September 25–27, 1995; proceedings, volume 979 of LNCS, pages 494–507, Berlin, 1995. Springer.

    Google Scholar 

  40. E. Reingold and J. Tilford. Tidier drawing of trees. IEEE Trans. Softw. Eng., SE-7(2):223–228, 1981.

    Article  Google Scholar 

  41. P. Rosenstiehl and R. E. Tarjan. Rectilinear planar layouts and bipolar orientations of planar graphs. Discrete Comput. Geom., 1(4):343–353, 1986.

    Article  MATH  MathSciNet  Google Scholar 

  42. K. Sugiyama, S. Tagawa, and M. Toda. Methods for visual understanding of hierarchical systems. IEEE Trans. Syst. Man Cybern., SMC-11(2):109–125, 1981.

    Article  MathSciNet  Google Scholar 

  43. R. Tamassia. On embedding a graph in the grid with the minimum number of bends. SIAM J. Comput., 16(3):421–444, 1987.

    Article  MATH  MathSciNet  Google Scholar 

  44. R. Tamassia, G. Di Battista, and C. Batini. Automatic graph drawing and readability of diagrams. IEEE Trans. Syst. Man Cybern., SMC-18(1):61–79, 1988.

    Article  Google Scholar 

  45. W. T. Tutte. How to draw a graph. Proceedings London Mathematical Society, 13(3):743–768, 1963.

    Google Scholar 

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

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Gutwenger, C., Jünger, M., Klau, G.W., Leipert, S., Mutzel, P. (2002). Graph Drawing Algorithm Engineering with AGD. In: Diehl, S. (eds) Software Visualization. Lecture Notes in Computer Science, vol 2269. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45875-1_24

Download citation

  • DOI: https://doi.org/10.1007/3-540-45875-1_24

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43323-1

  • Online ISBN: 978-3-540-45875-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics