Informations- visualisierung
Thema: 4. Darstellung von Graphen Dozent: Dr. Dirk Zeckzer
zeckzer@informatik.uni-leipzig.de Sprechstunde: nach Vereinbarung
Informationsvisualisierung, WS 2016/2017 4-2
Übersicht
4. Darstellung von Graphen
4.1 Einleitung 4.2 Definitionen 4.3 Graph Drawing
4.4 Dynamische Graphen 4.5 InfoVis Techniken
4.6 Ausblick
4.1 Einleitung
Zu visualisierende Entitäten besitzen häufig inhärente Relationen (Beziehungen oder Abhängigkeiten)
Graphen eignen sich als Repräsentation
Knoten stellen Entitäten dar
Kanten stellen Relationen dar
Informationsvisualisierung, WS 2016/2017 4-4
4.1 Einleitung
Anwendungen
Szenengraphen in der virtuellen Realität
Strukturen objektorientierter Systeme
Klassenhierarchie
Datenfluss
Echtzeitsystem (Zustandsdiagramme)
Schaltkreisentwurf (Very Large System Integration VLSI)
Taxonomie biologischer Arten
Bei Abstammung: phylogenetische Bäume
Biochemische Reaktionen
Stoffwechselsysteme
Signalwege
Organigramm einer Firma
Soziale Netzwerke
Semantische Netzwerke und Wissensrepräsentationsdiagramme
Webseiten und ihre Links
4.2 Definitionen
Graphen
Ein (ungerichteter) Graph 𝐺 = (𝑉, 𝐸) besteht aus
𝑉: endliche Menge von Knoten
𝐸: endliche Menge von Kanten 𝐸 ⊆ 𝑉 × 𝑉
Wenn {𝑢, 𝑣 } eine Kante ist, so heißen u und v adjazent (benachbart)
Nachbarn von 𝑣 ∈ 𝑉 sind alle adjazenten Knoten
Anzahl der Nachbarn ist der Grad von 𝑣: |𝑣|
Ein Weg im Graph 𝐺 ist die Folge (𝑣1, 𝑣2, … , 𝑣ℎ) verschiedener Knoten von 𝐺, so dass ∀ 𝑖 = 1, … , ℎ − 1: {𝑣𝑖, 𝑣𝑖+1} ∈ 𝐸
Informationsvisualisierung, WS 2016/2017 4-6
4.2 Definitionen
Graphen (Fortsetzung)
Ein Graph (𝑉′, 𝐸′) mit 𝑉′ ⊆ 𝑉 und 𝐸′ ⊆ 𝐸 ∩ (𝑉′ × 𝑉′) heißt Teilgraph von G.
Im Falle 𝐸′ = 𝐸 ∩ (𝑉′ × 𝑉′) heißt 𝐺′ der durch 𝑉′ induzierte Teilgraph von G.
4.2 Definitionen
Datenstrukturen für Graphen
Adjazenzmatrix 𝑨
Für 𝐺 = 𝑉, 𝐸 , V = n hat 𝐴 𝑛 × 𝑛 Einträge
𝐴𝑢𝑣 = 1 {𝑢, 𝑣} ∈ 𝐸 0 {𝑢, 𝑣} ∉ 𝐸
Die Adjazenzmatrix eines Graphen ist immer symmetrisch
Adjazenzliste L
Für jeden Knoten 𝑣 ∈ 𝑉 erzeuge eine Liste mit allen Nachbarn 𝑈 = {𝑢|{𝑢, 𝑣} ∈ 𝐸} von 𝑣
Informationsvisualisierung, WS 2016/2017 4-8
4.2 Definitionen
Digraphen
Ein gerichteter Graph oder Digraph 𝐺 = (𝑉, 𝐸) besteht aus
𝑉: endliche Menge von Knoten
𝐸: endliche Menge von Kanten 𝐸 ⊆ 𝑉 × 𝑉
Die gerichtete Kante (𝑢, 𝑣) ∈ 𝐸 ist
ausgehende Kante für 𝑢
eingehende Kante für 𝑣
Knoten ohne ausgehende Kanten heißen Senken
Knoten ohne eingehende Kanten heißen Quellen
Eingangsgrad von 𝑣 : Anzahl eingehender Kanten
Ausgangsgrad von 𝑣 : Anzahl ausgehender Kanten
4.2 Definitionen
Digraphen (Fortsetzung)
Ein gerichteter Weg im Graph 𝐺 ist die Folge (𝑣1, 𝑣2, … , 𝑣ℎ)
verschiedener Knoten von 𝐺, so dass ∀ 𝑖 = 1, … , ℎ − 1: {𝑣𝑖, 𝑣𝑖+1} ∈ 𝐸
Ein gerichteter Weg heißt Zyklus, falls 𝑣ℎ = 𝑣1
Ein gerichteter azyklischer Graph (DAG, directed acyclic graph) ist gerichteter Graph ohne Zyklus
Zu einem Digraph 𝐺 gibt es immer einen Graphen 𝐺′, der durch
„Vergessen der Orientierung der Kanten“ entsteht
Informationsvisualisierung, WS 2016/2017 4-10
4.2 Definitionen
Digraphen (Fortsetzung)
Eine Knoten-Kanten-Zeichnung (Node-Link-Diagram) eines Graphen oder Digraphen 𝐺 ist eine Abbildung Γ vom Graphen in die Ebene:
Sie ordnet jedem Knoten 𝑣 einen Punkt 𝑝𝑣 und jeder Kante eine offene Jordankurve 𝐽𝑢𝑣 zu, welche die Punkte 𝑝𝑢 und 𝑝𝑣 als Endpunkte hat.
Gerichtete Kanten eines Digraphen werden in der Regel als Pfeile gezeichnet.
1 2 3 4 5 6
1 x x
2 x
3 x
4 x x
5 x
6 x
𝐿1 (1,2), (1,5) 𝐿2 (2,3)
𝐿3 (3,4)
𝐿4 (4,5), (4, 6) 𝐿5 (5,2)
𝐿6 (6,3)
Adjazenzmatrix (nicht symmetrisch)
Adjazenzliste Node-Link-Diagram 1
5 2
4 3
6
4.2 Definitionen
Planarität
Eine Zeichnung eines Graphen oder Digraphen heißt planar, wenn Kurven zweier verschiedener Kanten außer den Endpunkten keine gemeinsamen Punkte haben.
Ein Graph oder Digraph heißt planar, wenn es mindestens eine planare Zeichnung gibt.
Man beachte, dass nicht alle Graphen planar sind.
Nach der Eulerformel kann ein planarer Graph mit n Knoten höchstens 3n-6 Kanten haben!
Informationsvisualisierung, WS 2016/2017 4-12
Vier verschiedene Darstellungen desselben planaren Graphen
bett,fig1.6
4.2 Definitionen
4.2 Definitionen
Weitere Graphentypen
Multigraphen:
Sowohl bei gerichteten als auch bei ungerichteten Graphen können mehrfache Kanten zwischen gleichen Knoten und Kanten von einem Knoten zu sich selbst auftreten.
Hypergraphen:
Ein Hypergraph ist ein Tupel (𝑉, 𝐸) mit einer endlichen Menge von Knoten 𝑉 und einer endlichen Menge von Hyperkanten 𝐸 ⊆ 𝑃𝑜𝑡(𝑉).
Eine Kante verbindet mehr als zwei Knoten.
Jede Hyperkante verbindet eine Ausgangsmenge von Knoten mit einer Eingangsmenge von Knoten.
Informationsvisualisierung, WS 2016/2017 4-14
4.2 Definitionen
Bäume
Werden auch als Hierarchien bezeichnet.
Spezielle Beziehungen
Eltern-Kind Beziehung
Geschwisterbeziehung
Eigenschaften:
Spezieller Graph mit Einschränkungen
Ohne Zyklen
Ausgezeichneter Knoten: Wurzel
Knoten mit Grad 1: Blatt
Alle anderen Knoten: innere Knoten
4.2 Definitionen
Ungerichtete Bäume
Ungerichtete Bäume müssen zusammenhängend sein
Gerichtete Bäume
Gerichtete Bäume müssen schwach zusammenhängend sein
Die Kanten sind immer von der Wurzel zu den Blättern oder von den Blättern zur Wurzel gerichtet
Es immer nur maximal einen Weg von einem Knoten 𝑢 zu einem anderen Knoten 𝑣
⟹ Es gibt immer genau einen Weg von der Wurzel zu jedem Blatt oder von jedem Blatt zur Wurzel
Informationsvisualisierung, WS 2016/2017 4-16
4.2 Definitionen
Eigenschaften von Graphen, Knoten, Kanten
Graph
Gerichtet, ungerichtet
Zyklisch, azyklisch
Multigraph
Hypergraph
Planar
Baum
Knoten
Typ
Zusätzliche Informationen
Kanten
Gerichtet (Richtung), ungerichtet
Gewichte
Typ
Zusätzliche Informationen
4.3 Graph Drawing
Graphenzeichnen (Graph Drawing)
Eigene Forschungsgemeinschaft
Sehr großes Gebiet
Literatur
Graph drawing conference
Visualization conferences and journals
Web:
http://graphdrawing.org
Graph Visualization Software:
http://www.graphviz.org
Informationsvisualisierung, WS 2016/2017 4-18
4.3 Graph Drawing
Graphenzeichnen (Graph Drawing)
Literatur:
Giuseppe Di Battista, Peter Eades, Roberto Tamassia, Ioannis G. Tollis.
Graph Drawing - Algorithms for the Visualization of Graphs.
Prentice Hall Engineering, Science & Math. 1999.
ISBN 0-13-301615-3
Handbook of Graph Drawing and Visualization Roberto Tamassia, ed.
CRC Press 2014.
Herman, Melancon, Marshall.
Graph Visualization and Navigation in Information Visualization: A Survey.
IEEE TVCG 6(1): 24-43, 2000
4.3 Graph Drawing
Forschungsgebiete
Graph Layout und Position der Knoten
Skalierbarkeit
Navigation (besonders in großen Graphen)
Fokus & Kontext Methoden
Dynamische Graphen
Heterogene Knoten- und Kanten-Typen
Knoten mit großem Grad
Einbettung zusätzlicher Information
Visualisierung von isomorphen Teilgraphen
Vergleich von Graphen
Informationsvisualisierung, WS 2016/2017 4-20
4.3 Graph Drawing
Visuelle Darstellung
Knoten
Form
Farbe
Größe
Position
Bezeichnung
4.3 Graph Drawing
Visuelle Darstellung
Kanten
Farbe
Größe (Dicke)
Richtung
Bezeichner
Form
Gerade
Gekrümmt
Planar
Orthogonal
Informationsvisualisierung, WS 2016/2017 4-22
4.3 Graph Drawing
Konventionen
Es gibt verschiedene Zeichenkonventionen mit entscheidendem Einfluss auf die Auslegealgorithmen (Layout) von Graphen.
Geradlinige Zeichnung:
Jede Kante wird als gerade Linie gezeichnet.
Polylinienzeichnung:
Jede Kante wird als Polygonzug gezeichnet.
Orthogonale Zeichnung:
Jede Kante wird als Polygonzug achsenparalleler Linien gezeichnet.
4.3 Graph Drawing
Konventionen
Gitterzeichnung:
Knoten, Schnittpunkte und Kantenknicke haben ganzzahlige Koordinaten bzgl. eines festgelegten kartesischen Gitters.
Ebene (planare) Zeichnung:
Kanten schneiden sich höchstens an Knoten.
Aufwärtszeichnung / Abwärtszeichnung:
Für azyklische gerichtete Graphen (DAGs) wird jede Kante als monoton ansteigende / absteigende Kurve gezeichnet.
Informationsvisualisierung, WS 2016/2017 4-24
4.3 Graph Drawing
4.3 Graph Drawing
Informationsvisualisierung, WS 2016/2017 4-26
4.3 Graph Drawing
Ästhetikkriterien
Ästhetische Kriterien formulieren Wünsche an die Zeichnung eines Graphen, welche die Zeichnung möglichst gut erfüllen soll.
Ästhetikkriterien widersprechen sich oft.
Einzelne Kriterien können nicht immer erfüllt werden.
Da oft sind nicht alle Kriterien - manchmal sogar keines - zu erreichen sind, wird ein guter Kompromiss gesucht.
4.3 Graph Drawing
Ästhetikkriterien
Fläche: Graph wird auf möglichst kleiner Fläche gezeichnet.
Kantenlänge
Gesamtkantenlänge: Gesamtkantenlänge wird minimiert.
Maximale Kantenlänge: Länge der längsten Kante wird minimiert.
Gleichförmige Kantenlänge: Varianz der Kantenlängen wird minimiert.
Für die Minimierung von Fläche und Kantenlänge ist es notwendig, ein Gitter festzulegen, auf dem die Knoten liegen können, oder einen
Mindestabstand zwischen den Knoten festzulegen.
Informationsvisualisierung, WS 2016/2017 4-28
4.3 Graph Drawing
Ästhetikkriterien
Kantenschnitte: Minimierung der Anzahl der Schnittpunkte von Kanten
Knicke
Gesamtanzahl Knicke: Zahl aller Knicke aller Kanten soll minimiert werden.
Maximale Knickanzahl: Maximum von Knicken einer Kante wird minimiert.
Gleichmäßige Knickanzahl: Varianz der Knickanzahl wird minimiert.
Dies ist besonders bei orthogonalem Zeichnen sinnvoll.
Winkelauflösung: Kleinster auftretender Winkel zwischen zwei Kanten wird maximiert.
Seitenverhältnis: Seitenverhältnis des kleinsten umschriebenen Rechtecks soll dem Seitenverhältnis der Zeichenebene entsprechen.
Symmetrie: Symmetrien des Graphen sollen möglichst gut abgebildet werden.
4.3 Graph Drawing
Einschränkungen
Festlegen von Teilgraphen oder Teilzeichnungen, um bestimmte Konventionen einzuhalten:
Eine Menge von Knoten wird fixiert.
Die Kantenrichtung wird vorgegeben (links nach rechts, oben nach unten)
Informationsvisualisierung, WS 2016/2017 4-30
4.3 Graph Drawing
Topologie-Form-Metrik-Ansatz
Dieser Ansatz zielt vor allem auf orthogonale Gitterzeichnungen und basiert auf drei Verfeinerungsebenen:
Topologie. Zwei orthogonale Zeichnungen haben gleiche Topologie, wenn sie durch
stetige Deformation ohne Vertauschen von Facetten ineinander überführt werden können
Form. Zwei orthogonale Zeichnungen haben gleiche Form, wenn sie
gleiche Topologie haben und
eine Zeichnung aus der anderen nur durch Längenänderungen der Liniensegmente hervorgeht.
Metrik. Zwei orthogonale Zeichnungen haben gleiche Metrik, wenn sie
kongruent sind, also durch
Verschieben und Drehen ineinander überführt werden können.
4.3 Graph Drawing
Topologie-Form-Metrik-Ansatz/2
Umsetzung erfolgt durch drei entsprechende Schritte, bei denen nacheinander Topologie, Form und Metrik optimiert werden:
Planarisierung legt die Einbettung des Graphen, also seine Topologie fest:
Minimierung der Anzahl der Kantenschnitte:
Oft wird zunächst ein maximaler planarer Untergraph gesucht und eingebettet.
Anschließend werden verbleibende Kanten einzeln eingefügt, wobei jeweils möglichst wenig Überschneidungen erzeugt werden.
An Überschneidungen werden Dummy-Knoten eingefügt.
[Jeron, Jard. 3D Layout of Reachability Graphs of Communicating Processes. Graph Drawing '94 Proceedings, 1995, 25-32], [Jünger, Leipert, Mutzel. Pitfalls of using PQ-trees in automatic graph drawing. Graph Drawing '97 Proceedings, 1997, 193-204]
Informationsvisualisierung, WS 2016/2017 4-32
4.3 Graph Drawing
Topologie-Form-Metrik-Ansatz/3
Orthogonalisierung legt die Form fest:
Orthogonale Repräsentation des Graphen
Knoten ohne Koordinaten
Kanten lediglich Winkellisten, zur Festlegung ihrer Knicke
Minimierung der Knicke ist in der Regel das Hauptziel
Kompaktifizierung legt endgültige Koordinaten der Kanten und der Kantenknicke fest:
In der Regel wird die Fläche des Graphen minimiert
[Jeron, Jard. 3D Layout of Reachability Graphs of Communicating Processes. Graph Drawing '94 Proceedings, 1995, 25-32], [Jünger, Leipert, Mutzel. Pitfalls of using PQ-trees in automatic graph drawing. Graph drawing '97 Proceedings, 1997, 193-204]
[Battista, Eades, Tamassia, Tollis, Graph Drawing, Prentice-Hall, 1999]
4.3 Graph Drawing
Informationsvisualisierung, WS 2016/2017 4-34
4.3 Graph Drawing
Sichtbarkeitsansatz
Der Sichtbarkeitsansatz dient dem Auslegen beliebiger Graphen mit Polylinien
Planarisierung gleicht dem Topologie-Form-Metrik-Ansatz;
Ziel ist Schnittvermeidung
Der Sichtbarkeitsschritt schafft eine Sichtbarkeitsrepräsentation des Graphen
Jedem Knoten wird horizontales und jeder Kante {u,v} vertikales Segment zugeordnet
Kantensegment hat Anfang und Ende innerhalb Knotensegmente
Kantensegmente schneiden einander nicht
Ersetzungsschritt erzeugt endgültige Zeichnung des Graphen
Ersetzen jedes horizontalen Segments durch Punkt
Ersetzen jedes vertikalen Segments durch Polylinie
Mögliche Strategien / Ästhetikkriterien: Knickminimierung, Symmetriebetonung, gleichmäßige Verteilung der Knoten
4.3 Graph Drawing
Informationsvisualisierung, WS 2016/2017 4-36
4.3 Graph Drawing
Verfeinerungsansatz
Betrachtet Polylinienzeichnungen
Planarisierung gleicht Topologie-Form-Metrik-Ansatz;
Ziel ist Schnittvermeidung
Verfeinerung fügt geeignete Anzahl von Kanten (evtl. auch Knoten) in Einbettung ein, um einen maximalen planaren Graphen zu erzeugen:
Alle Facetten haben dann drei Kanten - Triangulierung
Qualität des Zeichnens maximaler Graphen hängt in der Regel vom Knotengrad ab
Minimierung des maximalen Knotengrades
Triangulierungszeichnung erzeugt Zeichnung durch
Auslegen aller Dreiecke und
anschließendes Entfernen der Dummy-Kanten und ggf. Dummy-Knoten
4.3 Graph Drawing
Verfeinerungsansatz/2
Alle Algorithmen nutzen spezielle Triangulierungseigenschaften durch
überschneidende aufspannende Bäume oder
kanonische Knotenaufzählungen
(Beim Entfernen der Dummy-Knoten können Knicke und Schnitte entstehen.)
Informationsvisualisierung, WS 2016/2017 4-38
4.3 Graph Drawing
4.3 Graph Drawing
Kraftbasierter Ansatz
Kraftbasierte Ansätze sind Methoden für geradlinige Zeichnungen ungerichteter Graphen.
Simuliert System von Kräften auf Eingabegraphen und gibt Zeichnung minimaler Energie aus.
Zwei Knoten stoßen sich ab
Eine Kante hält zwei Knoten zusammen („anziehende“ Kraft)
Oft weitere Kräfte
Zentrumskraft um Zeichnung im View zu halten
Energieminimierung: einfache, iterative Ansätze zur Lösung
Informationsvisualisierung, WS 2016/2017 4-40
4.3 Graph Drawing
Kraftbasierte Methoden orientieren sich an einem
physikalischen Modell mit Kräften bzw. potentieller Energie
Energie wird minimiert
Das Optimierungsproblem wird lokal gelöst
4.3 Graph Drawing
Spring Embedder
Im Graph Drawing zuerst von P. Eades eingeführt (1984)
Zwei ästhetische Kriterien
Symmetrie
Einheitliche Länge der Kanten
Gerade Linien
Kräfte
Abstoßende Kräfte (Ladungen) zwischen den Knoten
Federkraft für die Kanten
Informationsvisualisierung, WS 2016/2017 4-42
4.3 Graph Drawing
Spring Embedder
Knoten
Positiv geladene Teilchen
𝑔𝑢𝑣: elektrische Abstoßung von 𝑣 durch 𝑢
Kanten
Feder mit vorgegebener Ruhelänge 𝑙𝑢𝑣
𝑓𝑢𝑣: die Kraft durch die Feder zwischen u und v
𝑔𝑢𝑣 und 𝑓𝑢𝑣 wirken jeweils auf 𝑢 und 𝑣
Kraft auf 𝑣
𝐹 𝑣 =
𝑢∈𝑉, {𝑢,𝑣}∈𝐸
𝑓𝑢𝑣 +
𝑢∈𝑉
𝑔𝑢𝑣
Spring Embedder
Genauer gilt
𝐹 𝑣
=
𝑢∈𝑉, {𝑢,𝑣}∈𝐸
𝑘(1)
𝑢𝑣 𝑑(𝑝𝑢, 𝑝𝑣) − 𝑙𝑢𝑣 𝑝𝑢 − 𝑝𝑣
𝑑(𝑝𝑢, 𝑝𝑣) +
𝑢∈𝑉
𝑘(2)
𝑢𝑣
1
(𝑑(𝑝𝑢, 𝑝𝑣))2
𝑝𝑢 − 𝑝𝑣 𝑑(𝑝𝑢, 𝑝𝑣)
Mit
Zeichnungspositionen 𝑝𝑢, 𝑝𝑣
Euklidischem Abstand 𝑑(𝑝𝑢, 𝑝𝑣)
Federkonstanten 𝑘(1)
4.3 Graph Drawing
Informationsvisualisierung, WS 2016/2017 4-44
Spring Embedder
Lösung mit numerischen Verfahren; häufig genutzter Ansatz 1. Plaziere Knoten zufällig in der Ebene
2. Berechne Kraft 𝐹(𝑣) für alle Knoten 𝑣
3. Bewege jeden Knoten 𝑣 ein kleines Stück in Richtung 𝐹(𝑣)
4. Wenn Kräfte nicht annähernd Null sind und das Maximum an Iterationen nicht erreicht ist, gehe zu 2.
Alternative, schnellere Ansätze liefert beispielsweise die Numerik gewöhnlicher Differentialgleichungen
4.3 Graph Drawing
Spring Embedder 4.3 Graph Drawing
Informationsvisualisierung, WS 2016/2017 4-46
4.3 Graph Drawing
Spring Embedder
Spring Embedder
Probleme
Hohe Laufzeit: 𝑂 𝑛2
Nicht effizient für große Graphen
Sehr empfindlich gegenüber Veränderungen im Graphen
Hinzugefügte oder entfernte Knoten
Hinzugefügte oder entfernte Kanten
4.3 Graph Drawing
Informationsvisualisierung, WS 2016/2017 4-48
Spring Embedder
Verbesserungen
Hinzufügung lokaler minimaler Energien
Kamada and Kawai, 1989
[T. Kamada and S. Kawai. An Algorithm for Drawing General and Undirected Graphs.
Information Processing Letters, 31(1), pp. 24-38, 1989]
Iterative, force-directed node placement
Fruchterman and Rheingold, 1991
[T. Fruchterman and E. Rheingold. Graph Drawing by Force-directed Placement. Software – Practice and Experience, 21, pp. 1129-1164, 1991]
Simulated Annealing
Davidson and Harel, 1996
[R. Davidson and D. Harel. Drawing Graphs Nicely Using Simulated Annealing. ACM Transactions on Graphics, 15(4), 301-331, 1996]
4.3 Graph Drawing
4.3 Graph Drawing
Nachteile der Energie-basierten Ansätze
Finden nicht immer die beste Lösung
Sind stark parameterabhängig
Informationsvisualisierung, WS 2016/2017 4-50
4.3 Graph Drawing
Vorteile der Energie-basierten Ansätze
Lassen sich gut verbinden mit Einschränkungen (Constraints)
Festgelegte Positionen einiger Knoten
Fixierte Teilgraphen
Als Energie beschreibbare Beschränkungen
Bemerkungen
Kraftbasierte Methoden benötigen oft viel Rechenaufwand
Daher effiziente Minimierungsmethoden nötig
Auf Zufallsbasis (Simulated Annealing, Behandlung steifer Differentialgleichungen, Kombinatorische Vorbehandelung)
Geeignete Heuristiken
4.3 Graph Drawing
Divide-and-Conquer Ansatz
Beliebtes Informatikprinzip wird auch bei Zeichnungen von Graphen gerne benutzt
Zerlegt Graph in Teilgraphen, zeichnet diese und erhält letztlich eine Zeichnung des gesamten Graphen
Topologischer Ansatz
verwendet divide-and-conquer
Teilgraphen haben unterschiedliche Topologie
Hierarchischer Ansatz
Insbesondere für Bäume und gerichtete Graphen
Teilgraphen haben gleiche Eigenschaften
Informationsvisualisierung, WS 2016/2017 4-52
4.3 Graph Drawing
Topologischer Ansatz
[Archambault, Munzner, Auber. TopoLayout: Multi-Level Graph Layout by Topological Features.
IEEE Transactions on Visualization and Computer Graphics 13(2):305—317, 2006]
Idee:
1. Zerlege den Graphen in Teilgraphen entsprechend verschiedener Typen
2. Berechne das Layout basierend auf der Zerlegung
a) Zeichne jeden Teilgraphen mit dem best-möglichen Algorithmus b) Reduziere Kanten-Schnitte
c) Entferne Überlappungen von Knoten
4.3 Graph Drawing
Topologischer Ansatz
1. Zerlege den Graphen in Teilgraphen entsprechend verschiedener Typen a) Auswahl der Typen
a) Bäume
b) Bi-Connected Components c) HDE
d) Fast vollständig e) Cluster
b) Reihenfolge der Erkennung wichtig
Informationsvisualisierung, WS 2016/2017 4-54
4.3 Graph Drawing
Topologischer Ansatz
1. Beispiel
4.3 Graph Drawing
Topologischer Ansatz
2. Berechne das Layout basierend auf der Zerlegung
a. Zeichne jeden Teilgraphen mit dem best-möglichen Algorithmus b. Reduziere Kanten-Schnitte
Rotieren der Subgraphen
c. Entferne Überlappungen von Knoten
Informationsvisualisierung, WS 2016/2017 4-56
4.3 Graph Drawing
Topologischer Ansatz
Komplexität
𝑑: Dimension des Raumes bei HDE
𝑟𝑖: maximaler Grad eines Knotens im Teilgraphen der Ebene 𝑖
Algorithmus Komplexität
Erkennung
Baum 𝑂(𝑁𝑖 + 𝐸𝑖)
Biconnected Component 𝑂(𝑁𝑖 + 𝐸𝑖) Connnected Component 𝑂(𝑁𝑖 + 𝐸𝑖)
HDE 𝑂(𝑑 ∙ (𝑁𝑖 + 𝐸𝑖))
Vollständig 𝑂(1)
Cluster 𝑂(𝑟𝑖 ∙ 𝐸𝑖)
4.3 Graph Drawing
Topologischer Ansatz
Komplexität
𝑑: Dimension des Raumes bei HDE
𝐿: Anzahl Ebenen um Drehung zu berechnen
Algorithmus Komplexität
Initiales Layout
Bubble Tree 𝑂(𝑁𝑖 ∙ log 𝑁𝑖)
Walker Tree 𝑂(𝑁𝑖)
Zirkulär (vorgegebene Fläche) 𝑂(𝑁𝑖) GEM (vorgegebene Fläche) 𝑂(𝑁𝑖3)
Informationsvisualisierung, WS 2016/2017 4-58
4.3 Graph Drawing
Topologischer Ansatz
Ergebnisse
4.3 Graph Drawing
Hierarchischer Ansatz
Der hierarchische Ansatz eignet sich besonders für das Layout von Bäumen und gerichteten azyklischen Graphen (DAGs) und verwendet ebenfalls drei Schritte 1. Schichtungsschritt: der DAG wird in einen geschichteten Digraphen
verwandelt, bei dem jedem Knoten eine Schicht 𝐿𝑖 zugeordnet wird, so dass für alle Kanten (𝑢, 𝑣) gilt: 𝑢 ∈ 𝐿𝑖 ∧ 𝑣 ∈ 𝐿𝑗 ∧ 𝑖 < 𝑗
Auf Kanten, die Schichten kreuzen (𝑗 > 𝑖 + 1), wird für jede gekreuzte Schicht ein Dummy-Knoten und eine Dummy-Kante eingefügt.
Dadurch entsteht ein echt geschichteter Digraph:
jede Kante läuft von Schicht 𝑖 zu Schicht 𝑖 + 1.
Informationsvisualisierung, WS 2016/2017 4-60
4.3 Graph Drawing
Hierarchischer Ansatz
3. Festlegen der x-Koordinaten der Knoten in den Schichten Bemerkungen:
Für die endgültige Zeichnung ersetzt man Dummy-Knoten durch Knicke
Knicke können minimiert oder Symmetrien betont werden Gerichtete Graphen mit Zyklen:
Für gerichtete Graphen mit Zyklen wird eine minimale Anzahl von Kanten umgedreht, um einen DAG zu erzeugen.
Diese werden am Ende in ihrer ursprünglichen Richtung gezeichnet.
4.3 Graph Drawing
Am weitesten verbreiteter Algorithmus:
Sugiyama-Algorithmus [STT1981]
Entwickelt für gerichtete azyklische Graphen
Ästhetikkriterien:
Alle Kanten zeigen in die gleiche Richtung
Kanten sollen möglichst kurz sein
Knoten sollen möglichst gleichmäßig verteilt sein
Kantenschnitte sollen minimiert werden
Kanten sollte gerade Linien sein
Informationsvisualisierung, WS 2016/2017 4-62
4.3 Graph Drawing
Algorithmus
1. Weise jeden Knoten einer Ebene zu (vertikale Position, y- Koordinate)
2. Ordne die Knoten einer jeden Ebene so, dass die Zahl der Kantenschnitte minimiert wird
3. Weise jedem Knoten seine horizontale Position zu (x- Koordinate)
Bett fig 2.7
4.3 Graph Drawing
Informationsvisualisierung, WS 2016/2017 4-64
4.3 Graph Drawing
Das Layout von gerichteten Graphen wird in der Regel mit dem Sujiyama Algorithmus und verschiedenen Heuristiken
durchgeführt
Gleicher Input erzeugt das gleiche Layout (falls dieselbe Heuristik verwendet wird)
Isomorphe Teilgraphen haben nicht notwendigerweise das gleiche Layout
4.3 Graph Drawing
3D Graph Drawing
Klassische 2D Algorithmen werden auf 3D erweitert (siehe auch den Abschnitt über Bäume)
Probleme
Navigation
Überlappungen (Überdeckungen)
Mental map (kognitive Karte)
Informationsvisualisierung, WS 2016/2017 4-66
4.3 Graph Drawing
3D Graph Drawing: Linux Kernel
[http://www.pabr.org/kernel3d/kernel3d.html]
4.3 Graph Drawing
3D Orthogonal graph drawing
Informationsvisualisierung, WS 2016/2017 4-68
4.4 Dynamische Graphen
Netzwerke können sich im Laufe der Zeit verändern
Biochemische Netzwerke werden durch neu entdeckte Pfade ergänzt
Soziale Netzwerke: neue Kontakte
Evolution von Software
Die Darstellungen sollten die „Mental Map“ erhalten
„Alte Strukturen“ sollten leicht wiedererkannt werden
[K. Misue, P. Eades, W. Lai, and K. Sugiyama, “Layout Adjustment and the Mental Map”, Journal of Visual Languages and Computing 6 (1995), 183-210.]
4.4 Dynamische Graphen
Morphing
Visualisierung des Übergangs von einem Layout zum nächsten durch stetige, ruckfreie Animationen (‚smooth animations‘)
Vorteile
Ästhetisch ansprechend
Nachteile
Knoten ändern ihre Position
Neue oder entfernte Knoten werden unter Umständen nicht erkannt
Informationsvisualisierung, WS 2016/2017 4-70
4.4 Dynamische Graphen
Morphing
Morphing kann auf jedes 2D und 3D Layout angewendet werden
Wenn ein Knoten eine neue Position im neuen Layout erhält, wir ein Animationspfad berechnet, der zwischen alter und neuer Position interpoliert
GraphAEL
[C. Erten, P. J. Harding, S. G. Kobourov, K. Wampler, and G. Yee, “GraphAEL: Graph Animations with Evolving Layouts”, 11th Symposium on Graph Drawing (GD), p. 98-110, 2003.]
Verwendet eine Kraft-basierte Methode
4.4 Dynamische Graphen
Morphing
Informationsvisualisierung, WS 2016/2017 4-72
4.4 Dynamische Graphen
Morphing
[http://graphael.cs.arizona.edu/graphael/]
4.4 Dynamische Graphen
Foresighted Graph Layout
[S. Diehl, C. Görg, and A. Kerren. “Preserving the Mental Map using Foresighted Layout”. In
Proceedings of Joint Eurographics - IEEE TCVG Symposium on Visualization, VisSym’01, Springer Verlag, 2001.]
Voraussetzung
Die Graphensequenz ist bekannt
Die Graphensequenz kann vorab berechnet werden
Idee
Berechne den Super-Graphen der Graphensequenz
Platziere die Knoten optimal entsprechend dem Super-Graphen
Informationsvisualisierung, WS 2016/2017 4-74
4.4 Dynamische Graphen
Foresighted Graph Layout
Vorteile
Die „Mental Map“ bleibt erhalten
Kann mit jedem Graph-Layout verwendet werden
Nachteile
Oft ist die Graphensequenz nicht vorab bekannt
Zum Teil schlechte Ästhetik
4.4 Dynamische Graphen
Foresighted Graph Layout
Informationsvisualisierung, WS 2016/2017 4-76
4.4 Dynamische Graphen
Adaptiv, Kraft-basiert
[Y. Frishman, Dynamic Drawing of Clustered Graphs, InfoVis 2007]
4.5 InfoVis Techniken
Netzwerkvisualisierung mit Semantic Substrates
u/hcil/pubs/presentations/NVSS-3_files/frame.htm
Informationsvisualisierung, WS 2016/2017 4-78
4.5 InfoVis Techniken
Hybride Visualisierung
[N. Henry et al., NodeTrix: A Hybrid Visualization of Social Networks, InfoVis 2007]
4.5 InfoVis Techniken
Hybride Visualisierung
[N. Henry et al., NodeTrix: A Hybrid Visualization of Social Networks, InfoVis 2007]
Informationsvisualisierung, WS 2016/2017 4-80
4.5 InfoVis Techniken
Hybride Visualisierung
[N. Henry et al., NodeTrix: A Hybrid Visualization of Social Networks, InfoVis 2007]
4.5 InfoVis Techniken
Hierarchien
[D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009]
Informationsvisualisierung, WS 2016/2017 4-82
4.5 InfoVis Techniken
Hierarchien
[D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009]
4.5 InfoVis Techniken
Hierarchien
[D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009]
Informationsvisualisierung, WS 2016/2017 4-84
4.5 InfoVis Techniken
Hierarchien
[D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009]
4.5 InfoVis Techniken
Kantenbündel (Edge Bundles)
[Danny Holten, Hierarchical Edge Bundles:Visualization of Adjacency Relations in Hierarchical Data, InfoVis 2006]
Informationsvisualisierung, WS 2016/2017 4-86
4.5 InfoVis Techniken
Kantenbündel (Edge Bundles)
[Danny Holten, Hierarchical Edge Bundles:Visualization of Adjacency Relations in Hierarchical Data, InfoVis 2006]
4.5 InfoVis Techniken
Graph-Motive (Graph Motifs)
[T. von Landesberger et al., Visual Analysis of Graphs with Multiple Connected Components, VAST 2009]
Informationsvisualisierung, WS 2016/2017 4-88
4.5 InfoVis Techniken
Graph-Motive (Graph Motifs)
[T. von Landesberger et al., Visual Analysis of Graphs with Multiple Connected Components, VAST 2009]
4.5 InfoVis Techniken
Graph-Motive (Graph Motifs)
[T. von Landesberger et al., Visual Analysis of Graphs with Multiple Connected Components, VAST 2009]
Informationsvisualisierung, WS 2016/2017 4-90
4.5 InfoVis Techniken
Hybrid Visualisierung und Clustering
[V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010]
4.5 InfoVis Techniken
Hybrid Visualisierung und Clustering
[V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010]
Informationsvisualisierung, WS 2016/2017 4-92
4.5 InfoVis Techniken
Hybrid Visualisierung und Clustering
[V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010]
4.5 InfoVis Techniken
Hybrid Visualisierung und Clustering
[V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010]
Informationsvisualisierung, WS 2016/2017 4-94
Literatur
Herman, Melancon, Marshall. Graph Visualization and Navigation in Information Visualization: A Survey. IEEE TVCG 6(1): 24-43, 2000
G. Di Battista, P. Eades, R. Tomassia, I. G. Tollis. Graph Drawing. Prentice-Hall, Upper Saddle River, NJ, USA, 1999
Roberto Tamassia, ed. Handbook of Graph Drawing and Visualization. CRC Press 2014.