Open Graph Drawing Framework
OGDF | |
---|---|
Basisdaten
| |
Entwickler | Lehrstühle unterschiedlicher Universitäten Deutschlands[1] |
Aktuelle Version | v.2020.02 (Catalpa) (9. Februar 2020) |
Betriebssystem | Linux, macOS, 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
[Bearbeiten | Quelltext bearbeiten]Das Framework lässt sich im Groben in folgende Bereiche unterteilen[2]:
Allgemeine Datenstrukturen
[Bearbeiten | Quelltext bearbeiten]Datenstrukturen zur Speicherung von allgemeinen Datentypen. Diese umfassen unter anderem:
Graph-Datenstrukturen
[Bearbeiten | Quelltext bearbeiten]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
[Bearbeiten | Quelltext bearbeiten]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
[Bearbeiten | Quelltext bearbeiten]In Modulen sind wiederverwendbare Algorithmen ausgelagert, welche von den einzelnen Layoutalgorithmen verwendet werden.
Unterstützte Dateiformate für Graphen
[Bearbeiten | Quelltext bearbeiten]Als Schnittstelle zum Lesen und Schreiben von Graphen unterstützt OGDF unter anderem folgende Dateiformate[3]:
- DOT
- GEXF (Graph Exchange XML Format) von Gephi
- Graph Modelling Language (GML)
- GraphML
- LEDAs natives Format für Graphen[4]
- Rudy
- TLP von Tulip
- YGF, das Y-Graph-Format