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 backslashhboxbackslashTeX 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.
Original languageEnglish
Title of host publicationGraph Drawing
EditorsWalter Didimo, Maurizio Patrignani
Number of pages12
Place of PublicationBerlin, Heidelberg
PublisherSpringer Berlin Heidelberg
Publication date2013
ISBN (Print)978-3-642-36762-5
ISBN (Electronic)978-3-642-36763-2
Publication statusPublished - 2013
Event20th International Symposium, GD 2012 - Redmond, United States
Duration: 19.09.201221.09.2012


Dive into the research topics of 'Graph Drawing in TikZ'. Together they form a unique fingerprint.

Cite this