Open Graph Drawing Framework
OGDF | |
---|---|
Basisdaten
| |
Entwickler | Lehrstühle unterschiedlicher Universitäten Deutschlands[1] |
Aktuelle Version | v.2012.07 (Sakura) (18. Juli 2012) |
Betriebssystem | Linux, Mac OS X, Windows |
Programmiersprache | C++ |
Lizenz | GNU General Public License Version 2 und 3 |
deutschsprachig | nein |
ogdf.net |
Das Open Graph Drawing Framework (OGDF) ist eine umfangreiche C++-Klassenbibliothek zur automatisierten Visualisierung von Graphen. Neben vielen Layout-Algorithmen bietet es ebenfalls eigene Datenstrukturen für Graphen unterschiedlicher Art sowie Schnittstellen zum Lesen und Schreiben einiger bekannter Datenformate zur Repräsentation von Graphen.
Bestandteile
Das Framework lässt sich im Groben in folgende Bereiche unterteilen[2]:
Allgemeine Datenstrukturen
Datenstrukturen zur Speicherung von allgemeinen Datentypen. Diese umfassen unter Anderem:
Graph-Datenstrukturen
Klassen zur Speicherung unterschiedlicher Arten von Graphen, ihren Knoten und Kanten und weiteren Helferklassen. Mit den Graphklassen können dargestellt werden:
- Allgemeiner Graph (gerichtet oder ungerichtet), Attribute zu einem Graph (Beschriftungen, Knoten-Koordinaten, weitere grafische Attribute, ...)
- Kombinatorische Einbettung eines planaren Graphs
- Dualgraph zu einer kombinatorischen Einbettung
- Graphreduktion, Graph-Clusterisierung
- Hypergraph
Layout-Algorithmen
Diverse Algorithmen zur Visualisierung (Layoutgenerierung) von Graphen. Diese umfassen:
- Orthogonale und geradlinige Layouts
- Multilevel-Layouts (z.B. FM³)
- Kräftebasierte Layouts (z.B. Spring Embedder, GEM, Simulated Annealing)
- Aufwärts-Layouts (z.B. Sugiyama)
- Planare Layouts
- Baumlayouts
Module
In Modulen sind wiederverwendbare Algorithmen ausgelagert, welche von den einzelnen Layoutalgorithmen verwendet werden.
Unterstützte Dateiformate für Graphen
Als Schnittstelle zum Lesen und Schreiben von Graphen unterstützt OGDF folgende Dateiformate[3]:
- Graph Modelling Language (GML)
- LEDA's natives Format für Graphen [4]
- XML
- Rudy