Configurable Graph Drawing Algorithms for the TikZ Graphics Description Language

Jannis Pohlmann

Abstract

Graphs are key to illustrating and understanding many complex systems and processes. This thesis provides an introduction to the graph drawing features of TikZ, a versatile language for creating a wide range of vector graphics that includes a framework for automatic graph layout strategies written in the Lua programming language. Algorithms for two families of drawing methods—spring and spring-electrical layouts of general graphs as well as layered drawings of directed graphs—were developed specifically for TikZ. They are presented along with a discussion of their underlying concepts, implementation details, and options to select, configure, and extend them. The generated spring and spring-electrical layouts feature a high degree of symmetry, evenly distributed nodes and almost uniform edge lengths. The techniques developed for layered drawings are successful in highlighting the flow of directed graphs and producing layouts with uniform edge lengths and few crossings. By discussing many graph drawing features valuable for end-users and researchers alike, this thesis aims at enabling a comparison to related tools and providing the groundwork for future research and algorithm development.
Original languageEnglish
QualificationMaster of Science
Awarding Institution
Supervisors/Advisors
  • Tantau, Till, Supervisor
  • Teichert, Hanns-Martin, Supervisor
Publication statusPublished - 2011
Externally publishedYes

Fingerprint

Dive into the research topics of 'Configurable Graph Drawing Algorithms for the TikZ Graphics Description Language'. Together they form a unique fingerprint.

Cite this