• Keine Ergebnisse gefunden

visualisierung Informations-

N/A
N/A
Protected

Academic year: 2021

Aktie "visualisierung Informations-"

Copied!
94
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Informations- visualisierung

Thema: 4. Darstellung von Graphen Dozent: Dr. Dirk Zeckzer

zeckzer@informatik.uni-leipzig.de Sprechstunde: nach Vereinbarung

(2)

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

(3)

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

(4)

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

(5)

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} ∈ 𝐸

(6)

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.

(7)

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 𝑣

(8)

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

(9)

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

(10)

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

(11)

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!

(12)

Informationsvisualisierung, WS 2016/2017 4-12

Vier verschiedene Darstellungen desselben planaren Graphen

bett,fig1.6

4.2 Definitionen

(13)

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.

(14)

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

(15)

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

(16)

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

(17)

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

(18)

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

(19)

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

(20)

Informationsvisualisierung, WS 2016/2017 4-20

4.3 Graph Drawing

Visuelle Darstellung

Knoten

Form

Farbe

Größe

Position

Bezeichnung

(21)

4.3 Graph Drawing

Visuelle Darstellung

Kanten

Farbe

Größe (Dicke)

Richtung

Bezeichner

Form

Gerade

Gekrümmt

Planar

Orthogonal

(22)

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.

(23)

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.

(24)

Informationsvisualisierung, WS 2016/2017 4-24

4.3 Graph Drawing

(25)

4.3 Graph Drawing

(26)

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.

(27)

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.

(28)

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.

(29)

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)

(30)

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.

(31)

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]

(32)

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]

(33)

4.3 Graph Drawing

(34)

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

(35)

4.3 Graph Drawing

(36)

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

(37)

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.)

(38)

Informationsvisualisierung, WS 2016/2017 4-38

4.3 Graph Drawing

(39)

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

(40)

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

(41)

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

(42)

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 𝑣

𝐹 𝑣 =

𝑢∈𝑉, {𝑢,𝑣}∈𝐸

𝑓𝑢𝑣 +

𝑢∈𝑉

𝑔𝑢𝑣

(43)

Spring Embedder

Genauer gilt

𝐹 𝑣

=

𝑢∈𝑉, {𝑢,𝑣}∈𝐸

𝑘(1)

𝑢𝑣 𝑑(𝑝𝑢, 𝑝𝑣) − 𝑙𝑢𝑣 𝑝𝑢 − 𝑝𝑣

𝑑(𝑝𝑢, 𝑝𝑣) +

𝑢∈𝑉

𝑘(2)

𝑢𝑣

1

(𝑑(𝑝𝑢, 𝑝𝑣))2

𝑝𝑢 − 𝑝𝑣 𝑑(𝑝𝑢, 𝑝𝑣)

Mit

Zeichnungspositionen 𝑝𝑢, 𝑝𝑣

Euklidischem Abstand 𝑑(𝑝𝑢, 𝑝𝑣)

Federkonstanten 𝑘(1)

4.3 Graph Drawing

(44)

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

(45)

Spring Embedder 4.3 Graph Drawing

(46)

Informationsvisualisierung, WS 2016/2017 4-46

4.3 Graph Drawing

Spring Embedder

(47)

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

(48)

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

(49)

4.3 Graph Drawing

Nachteile der Energie-basierten Ansätze

Finden nicht immer die beste Lösung

Sind stark parameterabhängig

(50)

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

(51)

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

(52)

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

(53)

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

(54)

Informationsvisualisierung, WS 2016/2017 4-54

4.3 Graph Drawing

Topologischer Ansatz

1. Beispiel

(55)

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

(56)

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 𝑂(𝑟𝑖 ∙ 𝐸𝑖)

(57)

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)

(58)

Informationsvisualisierung, WS 2016/2017 4-58

4.3 Graph Drawing

Topologischer Ansatz

Ergebnisse

(59)

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.

(60)

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.

(61)

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

(62)

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)

(63)

Bett fig 2.7

4.3 Graph Drawing

(64)

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

(65)

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)

(66)

Informationsvisualisierung, WS 2016/2017 4-66

4.3 Graph Drawing

3D Graph Drawing: Linux Kernel

[http://www.pabr.org/kernel3d/kernel3d.html]

(67)

4.3 Graph Drawing

3D Orthogonal graph drawing

(68)

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.]

(69)

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

(70)

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

(71)

4.4 Dynamische Graphen

Morphing

(72)

Informationsvisualisierung, WS 2016/2017 4-72

4.4 Dynamische Graphen

Morphing

[http://graphael.cs.arizona.edu/graphael/]

(73)

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

(74)

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

(75)

4.4 Dynamische Graphen

Foresighted Graph Layout

(76)

Informationsvisualisierung, WS 2016/2017 4-76

4.4 Dynamische Graphen

Adaptiv, Kraft-basiert

[Y. Frishman, Dynamic Drawing of Clustered Graphs, InfoVis 2007]

(77)

4.5 InfoVis Techniken

Netzwerkvisualisierung mit Semantic Substrates

u/hcil/pubs/presentations/NVSS-3_files/frame.htm

(78)

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]

(79)

4.5 InfoVis Techniken

Hybride Visualisierung

[N. Henry et al., NodeTrix: A Hybrid Visualization of Social Networks, InfoVis 2007]

(80)

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]

(81)

4.5 InfoVis Techniken

Hierarchien

[D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009]

(82)

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]

(83)

4.5 InfoVis Techniken

Hierarchien

[D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009]

(84)

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]

(85)

4.5 InfoVis Techniken

Kantenbündel (Edge Bundles)

[Danny Holten, Hierarchical Edge Bundles:Visualization of Adjacency Relations in Hierarchical Data, InfoVis 2006]

(86)

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]

(87)

4.5 InfoVis Techniken

Graph-Motive (Graph Motifs)

[T. von Landesberger et al., Visual Analysis of Graphs with Multiple Connected Components, VAST 2009]

(88)

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]

(89)

4.5 InfoVis Techniken

Graph-Motive (Graph Motifs)

[T. von Landesberger et al., Visual Analysis of Graphs with Multiple Connected Components, VAST 2009]

(90)

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]

(91)

4.5 InfoVis Techniken

Hybrid Visualisierung und Clustering

[V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010]

(92)

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]

(93)

4.5 InfoVis Techniken

Hybrid Visualisierung und Clustering

[V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010]

(94)

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.

Referenzen

ÄHNLICHE DOKUMENTE

Die schwachen Zusammenhangskomponenten eines Digraphen sind die von den Knotenmengen der Kompo- nenten seines unterliegenden ungerichteten Graphen induzier- ten

• Für jeden Knoten $ benutzen wir einen Zähler &#34;8$6 , der die Anzahl der eingehenden Kanten zählt.. • Haben wir einen Knoten, dessen Zähler 0 ist, nummerieren wir

Die isolierten Aptamere werden deswegen nach einer erfolgreichen Selektion für den in vivo Einsatz durch eine Modifizierung der Oligonucleotide im Rückgrat, an der 2´-Position

Steinle beschreibt die Zukunft demnach 72 als Leben in einem „Echtzeit-Datenfluss“ und sieht die Entwicklung vom „gläsernen Kun 73 - den [wird dann die] (zur)

Nur wenn explizit im Gegenlauf ge- fräst werden soll, muss der Befehl J-1 angegeben werden. Wenn Vorschub, Drehzahl und Drehrichtung nicht an- gegeben werden, sind automatisch die

Da sich bei der Umstellung der Verkehrswirtschaft auf den Krieg aus Gründen der Treibstoffersparnis der Zwang ergibt, die Einsetzung des Automobils auf alle jene Fälle zu

Einige Sorge bereitete dabei allerdings die Tatsache, dass in der Schweiz trotz aller Anstrengungen eine eigene Automobilindustrie für die Herstellung von Personenwagen nicht

Es ist deshalb Pflicht der Armeeleitung, nicht nur die Entwicklung der zivilen Motorisierung stets Interesse mit zu verfolgen und dafür einzutreten, dass die Bedürfnisse, der Armee