Graph Drawing in TikZ

Tantau, Till (2013) Graph Drawing in TikZ. In: 20th International Symposium, GD 2012, September 19-21, 2012, Redmond, WA, USA , pp. 517-528 (Official URL:

Full text not available from this repository.


At the heart of every good graph drawing algorithm lies an efficient procedure for assigning canvas positions to a graph’s nodes and the bend points of its edges. However, every real-world implementation of such an algorithm must address numerous problems that have little to do with the actual algorithm, like handling input and output formats, formatting node texts, and styling nodes and edges. We present a new framework, implemented in the Lua programming language and integrated into the TikZ graphics description language, that aims at simplifying the implementation of graph drawing algorithms. Implementers using the framework can focus on the core algorithmic ideas and will automatically profit from the framework’s pre- and post-processing steps as well as from the extensive capabilities of the TikZ graphics language and the \TeX typesetting engine. Algorithms already implemented using the framework include the Reingold-Tilford tree drawing algorithm, a modular version of Sugiyama’s layered algorithm, and several force-based multilevel algorithms.

Item Type:Conference Paper
Additional Information:10.1007/978-3-642-36763-2_46
Classifications:S Software and Systems > S.001 General
ID Code:1339

Repository Staff Only: item control page


Battista, G.D., Eades, P., Tamassia, R., Tollis, I.G.: Graph Drawing, Algorithms for the Visualization of Graphs. Prentice Hall (1999)

Brüggemann-Klein, A., Wood, D.: Drawing trees nicely with \TeX . Electronic Publishing 2(2), 101–115 (1989)

Chernobelskiy, R., Cunningham, K.I., Goodrich, M.T., Kobourov, S.G., Trott, L.: Force-Directed Lombardi-Style Graph Drawing. In: van Kreveld, M., Speckmann, B. (eds.) GD 2011. LNCS, vol. 7034, pp. 320–331. Springer, Heidelberg (2012)

Chimani, M., Gutwenger, C., Jünger, M., Klein, K., Mutzel, P., Schulz, M.: The open graph drawing framework. Poster at the 15th International Symposium on Graph Drawing 2007 (GD 2007) (2007)

Cunningham, W.H.: A network simplex method. Mathematical Programming 11(1), 105–116 (1976)

Eades, P., Sugiyama, K.: How to draw a directed graph. Journal of Information Processing 13(4), 424–436 (1990)

Ellson, J., Gansner, E., Koutsofios, E., North, S., Woodhull, G.: Graphviz and dynagraph – static and dynamic graph drawing tools. In: Junger, M., Mutzel, P. (eds.) Graph Drawing Software. Mathematics and Visualization, pp. 127–148. Springer (2004)

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

Ierusalimschy, R.: Programming in Lua., 2nd edn. (2006)

Pohlmann, J.: Configurable Graph Drawing Algorithms for the TikZ Graphics Description Language. Diploma thesis, Institute of Theoretical Computer Science, Universität zu Lübeck (October 2011)

Reingold, E.M., Tilford, J.S.: Tidier drawings of trees. IEEE Transactions on Software Engineering 7(2), 223–228 (1981)

Sugiyama, K., Tagawa, S., Toda, M.: Effective representations of hierarchical structures. Tech. Rep. 8, International Institute for Advanced Study of Social Information Science, Fujitsu (1979)

Tantau, T.: The TikZ and pgf Packages, Manual for version 2.10-cvs (2012),