Skip to main content
Log in

Constrained Graph Layout

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Most current graph layout technology does not lend itself to interactive applications such as animation or advanced user interfaces. We introduce the constrained graph layout model which is better suited for interactive applications. In this model, input to the layout module includes suggested positions for nodes and constraints over the node positions in the graph to be laid out. We describe four implementations of layout modules which are based on the constrained graph layout model. The first three implementations are for undirected graph layout while the fourth is for tree layout. The implementations use active set techniques to solve the layout. Our empirical evaluation shows that they are quite fast and give reasonable layout.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. G. D. Battisa, P. Eades, R. Tamassia, and I. G. Tollis. (1994). Algorithms for drawing graphs: an annotated bibliography. Computational Geometry: Theory and Applications, 4:235-282.

    Google Scholar 

  2. K. Böhringer and F. N. Paulisch. (1990). Using constraints to achieve stability in automatic graph layout algorithms. In Proc. of Conference on Human Factors in Computing Systems, CHI'90, pages 43-51.

  3. A. Borning. (1981). The programming language aspects of ThingLab, a constraint-oriented simulation laboratory. ACM Transactions on Programming Languages and Systems, 3(4):252-387.

    Google Scholar 

  4. M. J. Box, D. Davies, and W. H. Swann. (1969). Non-linear Optimization Techniques. Oliver & Boyd.

  5. F. J. Brandenburg. (1994). Designing graph drawings by layout graph grammars. In Proceedings of DIMACS International Workshop, GD'94, LNCS 894, pages 416-427, Princeton, New Jersey, USA. Springer-Verlag.

  6. F. J. Brandenburg, M. Himsolt, and C. Rohrer. (1995). An experimental comparison of force-directed and randomized graph drawing algorithms. In Symposium on Graph Drawing, GD'95, LNCS 1027, pages 76-87, Passau, Germany. Springer-Verlag.

  7. K.W. Cattermole. (1979). Graph theory and communications networks. In R. J. Wilson and L.W. Beineke, editors, Applications of Graph Theory, pages 17-57. Academic Press.

  8. S. S. Chok and K. Marriott. (1995). Automatic construction of user interfaces from constraint multiset grammars. In IEEE Symposium on Visual Languages, pages 242-249.

  9. P. Ķikusts and P. Ručevskis. (1995). Layout algorithm of graph-like diagrams for grade windows graphic editors. In Symposium on Graph Drawing, GD'95, LNCS 1027, pages 361-364, Passau, Germany. Springer-Verlag.

  10. I. F. Cruz and A. Garg. (1994). Drawing graphs by example efficiently: trees and planar acyclic digraphs. In Proceedings of DIMACS International Workshop, GD'94, Princeton, New Jersey, USA, October 1994, LNCS 894, pages 404-415. Springer-Verlag.

  11. R. Davidson and D. Harel. (1991). Drawing graphs nicely using simulated annealing. Technical report, Department of Applied Mathematics and Computer Science.

  12. E. Dengler, M. Friedell, and J. Marks. (1993). Constraint-driven diagram layout. In Proceedings of the 1993 IEEE Symposium on Visual Languages, pages 330-335.

  13. P. Eades. (1984). A heuristic for graph drawing. Congressus Numerantium, 42:149-160.

    Google Scholar 

  14. P. Eades, W. Lai, K. Misue, and K. Sugiyama. (1991). Preserving the mental map of a diagram. In Proceedings of Compugraphics'91, pages 24-33.

  15. P. Eades, T. Lin, and X. Lin. (1990). Two tree drawing conventions. Technical Report 174, Key Centre for Software Technology, Department of Computer Science, The University of Queensland.

  16. P. Eades and K. Sugiyama. (1990). How to draw a directed graph. Journal of Information Processing, 13(4):424-437.

    Google Scholar 

  17. R. Fletcher. (1987). Practical Methods of Optimization. John Wiley & Sons.

  18. A. Frick, A. Ludwig, and H. Mehldau. (1994). A fast adaptive layout algorithm for undirected graphs. In Proceedings of DIMACS International Workshop, GD'94, LNCS 894, pages 388-403, Princeton, New Jersey, USA. Springer-Verlag.

  19. T. M. J. Fruchterman and E. M. Reingold. (1991). Graph drawing by force-directed placement. Software-Practice and Experience, 21(11):1129-1164.

    Google Scholar 

  20. E. R. Gansner, E. Koutsofios, S. C. North, and K. Vo. (1993). A technique for drawing directed graphs. IEEE Transactions on Software Engineering, 19(3):214-230.

    Google Scholar 

  21. A. Garg, M. T. Goodrich, and R. Tamassia. (1994). Area-efficient upward tree drawing. In Proceedings of the 9th Annual Symposium on Computational Geometry, ACM, pages 359-368.

  22. D. Goldfarb and A. Idnani. (1983). A numerically stable dual method for solving strictly convex quadratic programs. Math. Prog., 27:1-33.

    Google Scholar 

  23. W. He and K. Marriott. (1997). Constrained graph layout. In Proceedings of International Symposium on Graph Drawing, GD'96, LNCS 1190, pages 217-232, Berkeley, California, USA. New York: Springer.

    Google Scholar 

  24. R. Helm and K. Marriott. (1986). Declarative graphics. In Proc. of the 3rd International Conference on Logic Programming, LNCS 225, pages 513-527, London, England. Springer-Verlag.

  25. R. Helm and K. Marriott. (1991). A declarative specification and semantics for visual languages. Journal of Visual Languages and Computing, 2:311-331.

    Google Scholar 

  26. R. Helm, K. Marriott, T. Huynh, and J. Vlissides. (1995). An object-oriented architecture for constraint-based graphical editing. In Object-Oriented Programming for Graphics, pages 217-238. Springer-Verlag.

  27. J. Q. Walker II. (1990). A node-position algorithm for general tree. Software-Practice and Experience, 20(7):685-705.

    Google Scholar 

  28. T. Kamada. (1989). Visualizing Abstract Objects and Relations: a Constraints-based Approach, volume 5 of Computer Science. Singapore, New Jersey: World Scientific.

    Google Scholar 

  29. T. Kamada and S. Kawai. (1989). An algorithm for drawing general undirected graphs. Information Processing Letters, 31(1):7-15.

    Google Scholar 

  30. T. Kamps, J. Kleinz, and J. Read. (1995). Constraint-based spring-model algorithm for graph layout. In Symposium on Graph Drawing, GD'95, LNCS 1027, pages 349-360, Passau, Germany. Springer-Verlag.

  31. T. Lin and P. Eades. (1994). Integration of declarative and algorithmic approaches for layout creation. Technical Report TR-HJ-94-10, CSIRO Division of Information Technology, Centre for Spatial Information Systems.

  32. P. Lüders, R. Ernst, and S. Stille. (1995). An approach to automatic display layout using combinatorial optimization. Software-Practice and Experience, 25(11):1183-1202.

    Google Scholar 

  33. K. A. Lyons. (1992). Cluster busting in anchored graph drawing. In Proceedings of CASCON'92, pages 7-17, Toronto.

  34. K. Misue, P. Eades, W. Lai, and K. Sugiyama. (1995). Layout adjustment and the mental map. Journal of Visual Languages and Computing, 6:183-210.

    Google Scholar 

  35. B. A. Myers, D. A. Giuse, R. B. Dannenberg, B. V. Zanden, D. S. Kosbie, E. Pervin, A. Mickish, and P. Marchal. (1990). Garnet: comprehensive support for graphical highly interactive user interfaces. Computer, pages 71-85.

  36. S. C. North. (1995). Incremental layout in DynaDAG. In Symposium on Graph Drawing, GD'95, LNCS 1027, pages 409-418, Passau, Germany. Springer-Verlag.

  37. A. Papakostas, J. M. Six, and I. G. Tollis. (1997). Experimental and theoretical results in interactive orthogonal graph drawing. In Proceedings of International Symposium on Graph Drawing, GD'96, LNCS 1190, pages 371-386, Berkeley, California, USA. New York: Springer.

    Google Scholar 

  38. F. N. Paulisch. (1993). The Design of an Extendible Graph Editor. Springer-Verlag. LNCS 704.

  39. E. M. Reingold and J. S. Tilford. (1981). Tidier drawing of trees. IEEE Transaction on Software Engineering, SE-7(2):223-228.

    Google Scholar 

  40. M. D. Storey and H. A. Müller. (1995). Graph layout adjustment strategies. In Symposium on Graph Drawing, GD'95, LNCS 1027, pages 487-499, Passau, Germany. Springer-Verlag.

  41. K. Sugiyama and K. Misue. (1995). Graph drawing by magnetic-spring model. J.Visual Lang. Comput., 6(3). Special issue on Graph Visualization edited by I.F. Cruz and P. Eades.

  42. K. Sugiyama, S. Tagawa, and M. Toda. (1981). Methods for visual understanding of hierarchical system structures. IEEE Transaction on Systems, Man, and Cybernetics, SMC-11(2):109-125.

    Google Scholar 

  43. K. J. Supowit and E. M. Reingold. (1983). The complexity of drawing trees nicely. Acta Informatica, 18:377-392.

    Google Scholar 

  44. K. Tsuchida, Y. Adachi, Y. Oi, Y. Miyadera, and T. Yaku. (1995). Constraints and algorithms for drawing tree-structured diagrams. In Proceedings of the International Workshop on Constraints for Graphics and Visualization, CGV'95, pages 87-101, Cassis, France.

  45. D. Tunkelang. (1994). A practical approach to drawing undirected graphs. Carnegie Mellon University.

  46. J. G. Vaucher. (1980). Pretty-printing of trees. Software-Practice and Experience, 10:553-561.

    Google Scholar 

  47. L. Weitzman and K. Wittenburg. (1993). Relation grammars for interactive design. In Proceedings of IEEE Visual Languages, pages 4-11.

  48. C. Wetherell and A. Shannon. (1979). Tidy drawing of trees. IEEE Transaction on Software Engineering, SE-5(5):514-520.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

He, W., Marriott, K. Constrained Graph Layout. Constraints 3, 289–314 (1998). https://doi.org/10.1023/A:1009771921595

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1009771921595

Navigation