DOT (Graphviz)

Beschreibungssprache für die visuelle Darstellung von Graphen

DOT ist eine einfach gehaltene, aber mächtige Beschreibungssprache für die visuelle Darstellung von Graphen. Mit DOT lässt sich die Struktur eines gerichteten oder ungerichteten Graphen beschreiben. Außerdem besitzt DOT auch Sprachelemente, um die Visualisierung eines Graphen zu steuern. Zum Beispiel lassen sich Form und Farbe der Knoten und der Kanten festlegen.

Interpretiert wird DOT zum Beispiel von den Renderern des Graphviz-Softwarepaketes. Je nachdem, welchen Renderer man für einen mit DOT beschriebenen Graphen verwendet, sieht das Ergebnis unterschiedlich aus. Jeder Renderer realisiert ein anderes Grundprinzip für die Visualisierung. Graphviz stellt fünf Renderer zur Verfügung: dot, neato, fdp, twopi und circo.

Mit der statistischen Programmiersprache R und dem Paket DiagrammeR[1] lassen sich ebenfalls Grafiken erzeugen, die in der DOT-Sprache geschrieben sind.

DOT wurde von AT&T und den Bell-Labs entwickelt. Der Wortschatz von DOT ist relativ klein. Syntaktisch lehnt sich DOT an die Programmiersprache C an.

Beispiel

Bearbeiten
 
Der dazugehörige Graph

Das folgende Beispiel stellt einen gerichteten Graphen mit vier Knoten und drei Kanten dar. Die Knoten und die Kantenbeziehungen werden innerhalb geschweifter Klammern aufgeführt. Gerichtete Kanten zwischen den Knoten werden durch Pfeile -> dargestellt.

 digraph graphname
 {
     a -> b -> c;
     b -> d;
 }

Umwandlung zu PNG

Bearbeiten

Eine DOT-Datei kann leicht in ein PNG-Bild konvertiert werden.

dot -Tpng input.dot > output.png

Rasterung

Bearbeiten
 
Binärbaum aus einer DOT Beschreibung, in Graphviz gestaltet (Huffmanbaum Generator)

Die folgenden Rasterungsprogramme können DOT rendern:

  • Graphviz – Eine Sammlung von Anwendungen für DOT Rasterung
  • Grappa – Graphbearbeitung (basiert auf Graphviz)
  • OmniGraffle kann DOT Dateien lesen und bearbeiten
  • ZGRViewer, GraphViz/DOT Rasterung[2]

Andere Dateiformate für Graphen

Bearbeiten
  • GraphML – XML-basierte Beschreibungssprache für die Repräsentation von Graphen
Bearbeiten

Einzelnachweise

Bearbeiten
  1. Richard Iannone u. a.: R-Paket DiagrammeR. Create Graph Diagrams and Flowcharts Using R. In: CRAN. The R Foundation, archiviert vom Original (nicht mehr online verfügbar); abgerufen am 19. Juli 2016 (englisch, aktuelle Version: 0.8.4).
  2. zvtm.sourceforge.net