Abstract
We introduce a new approach for drawing diagrams. Our approach is to use a technique we call confluent drawing for visualizing non-planar graphs in a planar way. This approach allows us to draw, in a crossing-free manner, graphs—such as software interaction diagrams—that would normally have many crossings. The main idea of this approach is quite simple: we allow groups of edges to be merged together and drawn as “tracks” (similar to train tracks). Producing such confluent diagrams automatically from a graph with many crossings is quite challenging, however, so we offer two heuristic algorithms to test if a non-planar graph can be drawn efficiently in a confluent way. In addition, we identify several large classes of graphs that can be completely categorized as being either confluently drawable or confluently non-drawable.
This is an extended abstract. The full version of this paper can be found at http://arxiv.org/abs/cs.CG/0212046. Work by the second author is supported by NSF grant CCR-9912338. Work by the third and the forth author is supported by NSF Grants CCR-0098068, CCR-0225642, and DUE-0231467.
Chapter PDF
Similar content being viewed by others
References
Ball, T., Eick, S.G.: Software visualization in the large. IEEE Computer 29(4), 33–43 (1996)
Batini, C., Nardelli, E., Tamassia, R.: A layout algorithm for data flow diagrams. IEEE Trans. Softw. Eng. SE-12(4), 538–546 (1986)
Bondy, J.A., Murty, U.S.R.: Graph Theory with Applications. Macmillan, London (1976)
Breu, R., Hinkel, U., Hofmann, C., Klein, C., Paech, B., Rumpe, B., Thurner, V.: Towards a formalization of the unified modeling language. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 344–366. Springer, Heidelberg (1997)
Chambers, C., Dean, J., Grove, D.: A framework for selective recompilation in the presence of complex intermodule dependencies. In: Proceedings: 17th International Conference on Software Engineering, pp. 221–230 (1995)
Cheng, C.C., Duncan, C.A., Goodrich, M.T., Kobourov, S.G.: Drawing planar graphs with circular arcs. In: Kratochvíl, J. (ed.) GD 1999. LNCS, vol. 1731, pp. 117–126. Springer, Heidelberg (1999)
Chiba, N., Nishizeki, T.: Arboricity and subgraph listing algorithms. SIAM J. Comput. 14, 210–223 (1985)
Chiba, N., Nishizeki, T., Abe, S., Ozawa, T.: A linear algorithm for embedding planar graphs using PQ-trees. J. Comput. Syst. Sci. 30(1), 54–76 (1985)
Chrobak, M., Payne, T.H.: A linear time algorithm for drawing a planar graph on a grid. Technical Report UCR-CS-90-2, Dept. of Math. and Comput. Sci., Univ. California Riverside (1990)
Corneil, D.G., Lerchs, H., Burlingham, L.S.: Complement reducible graphs. Discrete Appl. Math. 3, 163–174 (1981)
de Fraysseix, H., Pach, J., Pollack, R.: How to draw a planar graph on a grid. Combinatorica 10(1), 41–51 (1990)
Di Battista, G., Eades, P., Tamassia, R., Tollis, I.G.: Graph Drawing. Prentice Hall, Upper Saddle River (1999)
Eades, P., Mutzel, P.: Graph drawing algorithms. In: Atallah, M. (ed.) CRC Handbook of Algorithms and Theory of Computation. ch. 9, CRC Press, Boca Raton (1999)
Eppstein, D.: Arboricity and bipartite subgraph listing algorithms. Information Processing Letters 51(4), 207–211 (1994)
Feder, T., Meyerson, A., Motwani, R., O’Callaghan, L., Panigrahy, R.: Representing graph metrics with fewest edges. In: Alt, H., Habib, M. (eds.) STACS 2003. LNCS, vol. 2607, pp. 355–366. Springer, Heidelberg (2003)
Garey, M.R., Johnson, D.S.: Crossing number is NP-complete. SIAM J. Algebraic Discrete Methods 4(3), 312–316 (1983)
Grove, D., DeFouw, G., Dean, J., Chambers, C.: Call graph construction in object-oriented languages. In: Proc. of ACM Symp. on Object-Oriented Prog. Sys., Lang. and Applications (OOPSLA), pp. 108–124 (1997)
Haynes, P., Menzies, T.J., Cohen, R.F.: Visualisations of large object-oriented systems. In: Eades, P.D., Zhang, K. (eds.) Software Visualisation, vol. 7, pp. 205–218. World Scientific, Singapore (1996)
Jünger, M., Lee, E.K., Mutzel, P., Odenthal, T.: A polyhedral approach to the multi-layer crossing minimization problem. In: DiBattista, G. (ed.) GD 1997. LNCS, vol. 1353, pp. 13–24. Springer, Heidelberg (1997)
Jünger, M., Mutzel, P.: 2-layer straightline crossing minimization: Performance of exact and heuristic algorithms. J. Graph Algorithms Appl. 1(1), 1–25 (1997)
Kant, G.: Drawing planar graphs using the canonical ordering. Algorithmica 16, 4–32 (1996); Di Battista, G., Tamassia, R.(ed.): special issue on Graph Drawing
Kaufmann, M., Wagner, D.: Drawing Graphs: Methods and Models. LNCS, vol. 2025. Springer, Heidelberg (2001)
Knuth, D.E.: Computer drawn flowcharts. Commun. ACM 6 (1963)
Lin, X.: On the computational complexity of edge concentration. DAMATH: Discrete Applied Mathematics and Combinatorial Operational Research, 101 (2000)
Mutzel, P.: An alternative method to crossing minimization on hierarchical graphs. In: North, S.C. (ed.) GD 1996. LNCS, vol. 1190, pp. 318–333. Springer, Heidelberg (1997)
Mutzel, P., Zeigler, T.: The constrained crossing minimization problem. In: Kratochvíl, J. (ed.) GD 1999. LNCS, vol. 1731, pp. 175–185. Springer, Heidelberg (1999)
Newbery, F.J.: Edge concentration: A method for clustering directed graphs. In: Proc. 2nd Internat. Workshop on Software Configuration Management, pp. 76–85 (1989)
Nishizeki, T., Chiba, N.: Planar Graphs: Theory and Algorithms. Ann. Discrete Math., vol. 32. North-Holland, Amsterdam (1988)
Penner, R.C., Harer, J.L.: Combinatorics of Train Tracks. Annals of Mathematics Studies, vol. 125. Princeton Univ. Press, Princeton (1992)
Price, B., Baecker, R., Small, I.: A principled taxonomy of software visualization. Journal of Visual Languages and Computing 4(3), 211–266 (1993)
Purchase, H.: Which aesthetic has the greatest effect on human understanding. In: Di Battista, G. (ed.) GD 1997. LNCS, vol. 1353, pp. 248–261. Springer, Heidelberg (1997)
Roman, G.-C., Cox, K.C.: A taxonomy of program visualization systems. IEEE Computer 26(12), 11–24 (1993)
Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual. Addison-Wesley, Reading (1998)
Schnyder, W.: Embedding planar graphs on the grid. In: Proc. 1st ACM-SIAM Sympos. Discrete Algorithms, pp. 138–148 (1990)
Stasko, J.T., Kraemer, E.: A methodology for building application-specific visualizations of parallel programs. Journal of Parallel and Distributed Computing 18(2), 258–264 (1993)
Tamassia, R., Tollis, I.G.: Planar grid embedding in linear time. IEEE Trans. Circuits Syst. CAS-36(9), 1230–1234 (1989)
Tip, F., Palsberg, J.: Scalable propagation-based call graph construction algorithms. ACM SIGPLAN Notices 35(10), 281–293 (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dickerson, M., Eppstein, D., Goodrich, M.T., Meng, J.Y. (2004). Confluent Drawings: Visualizing Non-planar Diagrams in a Planar Way. In: Liotta, G. (eds) Graph Drawing. GD 2003. Lecture Notes in Computer Science, vol 2912. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24595-7_1
Download citation
DOI: https://doi.org/10.1007/978-3-540-24595-7_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-20831-0
Online ISBN: 978-3-540-24595-7
eBook Packages: Springer Book Archive