Informationsvisualisierung Thema: Dozent: Sprechstunde: Umfang: Prüfungsfach: 4. Darstellung von Graphen Dr. Dirk Zeckzer [email protected] nach Vereinbarung 2 Modul Fortgeschrittene Computergraphik Medizininformatik, Angewandte Informatik 4.1 Einleitung Zu visualisierende Entitäten besitzen häufig inhärente Relationen (Beziehungen oder Abhängigkeiten) Dann: Graphen eignen sich als Repräsentation Knoten stellen Entitäten dar Kanten stellen Relationen dar Informationsvisualisierung 4-2 4.1 Einleitung Anwendungen Organigramm einer Firma Projektmanagement (z. B. Project Evaluation and Review Technique PERT) Soziale Netzwerke Taxonomie biologischer Arten (bei Abstammung: phylogenetische Bäume) Biochemische Reaktionen, speziell Stoffwechselsysteme oder Signalwege Ähnlichkeiten von Dokumenten Semantische Netzwerke und Wissensrepräsentationsdiagramme Webseiten und ihre Links Szenengraphen in der virtuellen Realität Datenstrukturen, insbesondere bei Compilern Strukturen objektorientierter Systeme (Klassenhierarchie, Datenfluss) Echtzeitsystem (Zustandsdiagramme) Schaltkreisentwurf (Very Large System Integration VLSI) Informationsvisualisierung 4-3 4.2 Definitionen Graphen Ein 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 } ∈ 𝐸 Ein Weg heißt Zyklus, falls {𝑣ℎ , 𝑣1 } ∈ 𝐸 Ein Graph ohne Zyklus heißt azyklischer Graph. Informationsvisualisierung 4-4 4.2 Definitionen Graphen (Fortsetzung) Ein Graph (𝑉 ′ , 𝐸′) mit 𝑉′ ⊆ 𝑉 und 𝐸′ ⊆ 𝐸 ∩ (𝑉′ × 𝑉′) heißt Teilgraph von G. Im Falle 𝐸 ′ = 𝐸 ∩ (𝑉′ × 𝑉′) heißt 𝐺′ der durch 𝑉′ induzierte Teilgraph von G. Informationsvisualisierung 4-5 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 𝑣 Graph Drawing Automatisches Zeichnen von Graphen in 2D und 3D Informationsvisualisierung 4-6 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. Ingrad von 𝑣 : Anzahl eingehender Kanten. Ausgrad von 𝑣 : Anzahl ausgehender Kanten. Informationsvisualisierung 4-7 4.2 Definitionen Digraphen (Fortsetzung) Ein gerichteter Weg in G im Graph 𝐺 ist die Folge (𝑣1 , 𝑣2 , … , 𝑣ℎ ) verschiedener Knoten von 𝐺, so dass ∀ 𝑖 = 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 Graph 𝐺′, der durch „Vergessen der Orientierung der Kanten“ entsteht. Informationsvisualisierung 4-8 4.2 Definitionen Digraphen (Fortsetzung) Kante (𝑢, 𝑣) eines Digraphen 𝐺 heißt transitiv, falls es einen Weg von 𝑢 nach 𝑣 gibt, der nicht durch (𝑢, 𝑣) läuft. Transitiver Abschluss von 𝑮: 𝐺 = 𝑉, 𝐸 , 𝐸 = 𝐸 ∪ {(𝑢, 𝑣)|∃𝑊𝑒𝑔 𝑣𝑜𝑛 𝑢 𝑛𝑎𝑐ℎ 𝑣 𝑖𝑛 𝐺} Informationsvisualisierung 4-9 4.2 Definitionen Digraphen (Fortsetzung) Auch für Digraphen eignen sich Adjazenzmatrizen und Adjanzenzlisten als Datenstrukturen. In diesem Fall ist die Adjazenzmatrix 𝐴 nicht symmetrisch. Informationsvisualisierung 4-10 4.2 Definitionen Eine Zeichnung eines Graphen oder Digraphen 𝐺 ist Abbildung Γ vom Graphen in 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. 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 4-11 4.2 Definitionen bett,fig1.6 Informationsvisualisierung 4-12 4.2 Definitionen Eine planare Zeichnung eines Graphen oder Digraphen zerlegt die Ebene in topologisch verbundene Regionen. Diese werden Facetten genannt. Die unbegrenzte Facette wird äußere Facette genannt. Eine planare Zeichnung bestimmt zirkuläre Ordnung der inzidenten Kanten an jedem Knoten durch Umlauf gegen/im Uhrzeigersinn. Zwei planare Zeichnungen heißen äquivalent, wenn sie die gleiche zirkuläre Ordnung an allen Knoten festlegen. Eine planare Einbettung eines Graphen oder Digraphen 𝐺 ist die Äquivalenzklasse von planaren Zeichnungen: • • Wird durch Festlegen der zirkulären Ordnungen der inzidenten Kanten an jedem Knoten festgelegt Auf der vorherigen Folie liefern a,b,c die gleiche, d dagegen eine andere Einbettung des Graphen. Ein eingebetteter Graph / Digraph ist ein Graph / Digraph mit festgelegter planarer Einbettung. Informationsvisualisierung 4-13 4.2 Definitionen Der Dualgraph 𝐺 ∗ zu einer Einbettung eines planaren Graphen 𝐺 besitzt einen Knoten für jede Facette der Einbettung und eine Kante (𝑓, 𝑔) zwischen zwei Facetten, wenn diese Facetten eine gemeinsame Kante in der Einbettung haben Informationsvisualisierung 4-14 4.2 Definitionen Ein Graph heißt zusammenhängend, wenn es Weg zwischen beliebigen Knoten 𝑢 ≠ 𝑣, 𝑢, 𝑣 ∈ 𝑉 gibt. Ein maximaler zusammenhängender Teilgraph von 𝐺 heißt Zusammenhangskomponente. Ein Schnittknoten eines Graphen 𝐺 ist ein Knoten, dessen Entfernen (einschließlich der inzidenten Kanten) den Graphen 𝐺 in mehrere Zusammenhangskomponenten teilt. Ein Graph ohne Schnittknoten heißt doppelt zusammenhängend. Maximale doppelt zusammenhängende Teilgraphen heißen Blöcke. Informationsvisualisierung 4-15 4.2 Definitionen Ein Paar (𝑢, 𝑣) von Knoten eines Graphen heißt trennendes Paar, falls das Entfernen von 𝑢 und 𝑣 den Graphen teilt . Ein doppelt zusammenhängender Graph ohne trennendes Paar heißt dreifach verbunden (dreifach zusammenhängend). Informationsvisualisierung 4-16 4.2 Definitionen Satz: Das Skelett (Ecken und Kanten) eines Polyhedrons im Raum ist ein planarer, dreifach zusammenhängender Graph. Satz: Ein planarer, dreifach zusammenhängender Graph hat eine eindeutige Einbettung (bis auf Umdrehung der zirkulären Ordnung an allen Knoten). Informationsvisualisierung 4-17 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. Eine Kante verbindet mehr als zwei Knoten: Ein Tupel (𝑉, 𝐸) mit einer endlichen Menge von Knoten 𝑉 und einer endlichen Menge von Hyperkanten 𝐸 ⊆ 𝑃𝑜𝑡(𝑉). Jede Hyperkante verbindet eine Ausgangsmenge von Knoten mit einer Eingangsmenge von Knoten. Hypergraphen können gerichtet und ungerichtet sein. Informationsvisualisierung 4-18 4.2 Definitionen Bäume Werden auch als Hierarchien bezeichnet. Spezielle Beziehungen Eltern-Kind Beziehung Geschwisterbeziehung Informationsvisualisierung 4-19 4.2 Definitionen Bäume Spezieller Graph mit Einschränkungen Ein Baum ist ein Graph ohne Zyklen mit einem ausgezeichneten Knoten, der Wurzel. Knoten mit Grad 1 heißen Blatt Alle anderen Knoten heißen innere Knoten Ungerichtete Bäume Ungerichtete Bäume haben keine weiteren Einschränkungen Gerichtete Bäume Gerichtete Bäume müssen zusätzlich schwach zusammenhängend sein, insbesondere gibt es immer nur maximal einen Weg von einem Knoten 𝑢 zu einem anderen Knoten 𝑣 Die Kanten sind immer von der Wurzel zu den Blättern oder von den Blättern zur Wurzel gerichtet Informationsvisualisierung 4-20 4.2 Definitionen Eigenschaften von Graphen, Knoten, Kanten Graph Zyklisch, azyklisch Gerichtet, ungerichtet Multigraph Hypergraph Planar Baum Knoten Typ Zusätzliche Information Kanten Gerichtet, ungerichtet Gewichte Typ Zusätzliche Information Informationsvisualisierung 4-21 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 4-22 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 Informationsvisualisierung 4-23 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 4-24 4.3 Graph Drawing Visuelle Darstellung Knoten Form Farbe Größe Position Bezeichnung Informationsvisualisierung 4-25 4.3 Graph Drawing Visuelle Darstellung Kanten Farbe Größe Dicke Richtung Bezeichner Form Gerade Gekrümmt Planar Orthogonal Informationsvisualisierung 4-26 4.3 Graph Drawing Konventionen Es gibt verschiedene Zeichenkonventionen mit entscheidendem Einfluss auf die Auslegealgorithmen von Graphen. Die gebräuchlichen Konventionen sind: 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. Gitterzeichnung. Knoten, Schnittpunkte und Kantenknicke haben ganzzahlige Koordinaten bzgl. eines festgelegten kartesischen Gitters. 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 4-27 4.3 Graph Drawing Bett, fig 2.1 fig 2.2 Informationsvisualisierung 4-28 4.3 Graph Drawing Ästhetikkriterien I Ästhetische Kriterien formulieren Wünsche an die Zeichnung eines Graphen, welche die Zeichnung möglichst gut erfüllen soll Oft sind nicht alle Kriterien, manchmal keines zu erreichen; es wird ein guter Kompromiss gesucht. Fläche: Graph wird auf möglichst kleiner Fläche gezeichnet. Dabei wird entweder das Gitterzeichnen oder ein Mindestabstand von Knoten vereinbart. Kantenschnitte: Minimierung der Anzahl der Schnittpunkte von Kanten Kantenlänge Gesamtkantenlänge: Gesamtkantenlänge wird minimiert. Auch dies ist nur bei Gitterzeichnen oder Knotenmindestabstand sinnvoll. Maximale Kantenlänge. Länge der längsten Kante wird minimiert. Wieder muss man Gitterzeichnen oder Knotenmindestabstand vereinbaren. Gleichförmige Kantenlänge. Varianz der Kantenlängen wird minimiert. Informationsvisualisierung 4-29 4.3 Graph Drawing Ästhetikkriterien II Knicke Gesamtanzahl Knicke. Zahl aller Knicke aller Kanten soll minimiert werden. Dies ist besonders bei orthogonalem Zeichnen sinnvoll. Maximale Knickanzahl. Maximum von Knicken einer Kante wird minimiert. Gleichmäßige Knickanzahl. Varianz der Knickanzahl wird minimiert. Winkelauflösung. Kleinster auftretender Winkel zwischen zwei Kanten wird maximiert. Seitenverhältnis. Seitenverhältnis des kleinsten umschriebenen Rechtecks soll nahe 1 sein. Symmetrie. Symmetrien des Graphen sollen möglichst gut abgebildet werden. Aber: Ästhetikkriterien widersprechen sich oft. Einzelne Kriterien können nicht immer erfüllt werden. Informationsvisualisierung 4-30 4.3 Graph Drawing Einschränkungen Festlegen von Teilgraphen oder Teilzeichnungen, um bestimmte Konventionen einzuhalten Häufige Beispiele in der Visualisierung Zentrum. Gegebener Knoten wird im Zentrum der Zeichnung fixiert Außen. Bestimmter Knoten wird der äußeren Facette benachbart Cluster. Gegebene Menge von Knoten wird nah beieinander angeordnet Links-Rechts-Folge. Vorgegebener Weg wird von links nach rechts gezeichnet (auch vertikal möglich) Form. Zeichne gegebenen Teilgraphen mit vorgegebener Form Informationsvisualisierung 4-31 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. Informationsvisualisierung 4-32 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] [Battista, Eades, Tamassia, Tollis. Graph Drawing. Prentice-Hall, 1999] Informationsvisualisierung 4-33 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] Informationsvisualisierung 4-34 4.3 Graph Drawing Bett fig2.6 Informationsvisualisierung 4-35 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 Informationsvisualisierung 4-36 4.3 Graph Drawing Informationsvisualisierung 4-37 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 Knotengrad Triangulierungszeichnung erzeugt Zeichnung durch Auslegen aller Dreiecke und anschließendes Entfernen der Dummy-Kanten und ggf. DummyKnoten Informationsvisualisierung 4-38 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 4-39 4.3 Graph Drawing Informationsvisualisierung 4-40 4.3 Graph Drawing Kraftbasierter Ansatz Kraftbasierte Ansätze sind intuitive 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 4-41 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 Besonders geeignet für Bäume Informationsvisualisierung 4-42 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 Informationsvisualisierung 4-43 4.3 Graph Drawing Topologischer Ansatz 1. Zerlege den Graphen in Teilgraphen entsprechend verschiedener Typen a) Auswahl der Typen a) b) c) d) e) Bäume Bi-Connected Components HDE Fast vollständig Cluster b) Reihenfolge der Erkennung wichtig Informationsvisualisierung 4-44 4.3 Graph Drawing Topologischer Ansatz 1. Beispiel Informationsvisualisierung 4-45 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 4-46 4.3 Graph Drawing Topologischer Ansatz Komplexität 𝑟𝑖 : maximaler Grade eines Knotens im Teilgraphen der Ebene 𝑖 𝑑: Dimension des Raumes bei HDE Algorithmus Komplexität Erkennung Baum 𝑂(𝑁𝑖 + 𝐸𝑖 ) Biconnected Component 𝑂(𝑁𝑖 + 𝐸𝑖 ) Connnected Component 𝑂(𝑁𝑖 + 𝐸𝑖 ) HDE 𝑂(𝑑 ∙ (𝑁𝑖 + 𝐸𝑖 )) 𝑂(1) Vollständig 𝑂(𝑟𝑖 ∙ 𝐸𝑖 ) Cluster Informationsvisualisierung 4-47 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 ) HDE (vorgegebene Fläche) 𝑂(𝑑 ∙ (𝑁𝑖 ∙ log 𝑁𝑖 + 𝐸𝑖 )) Verfeinerung Kreuzungsminimierung 𝑂(𝐿 ∙ 𝑁𝑖 ∙ 𝐸) Überlappungsentfernung 𝑂(𝑁𝑖 ∙ log 𝑁𝑖 ) Informationsvisualisierung 4-48 4.3 Graph Drawing Topologischer Ansatz Ergebnisse Informationsvisualisierung 4-49 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. Der Schichtungsschritt verwandelt einen DAG in einen geschichteten Digraphen, bei dem jedem Knoten eine Schicht 𝐿𝑖 zugeordnet wird, so dass für alle Kanten (𝑢, 𝑣) gilt: 𝑢 ∈ 𝐿𝑖 ∧ 𝑣 ∈ 𝐿𝑗 ∧ 𝑖 < 𝑗 Nach Einfügen von Dummy-Knoten auf Kanten, die über mehr als eine Ebene laufen - so dass jede Kante von einer Schicht 𝑖 zur Schicht 𝑖 + 1 läuft - ist die ein echt geschichteter Digraph. 2. Bei Schnittreduzierung erhält jede Schicht eine Reihenfolge (Ordnung) Reihenfolge bestimmt Topologie des Layouts. Dabei wird Anzahl der Kantenschnitte minimiert. 3. Festlegen der x-Koordinaten legt x-Koordinaten der Knoten in den Ebenen fest Für endgültige Zeichnung ersetzt man Dummy-Knoten durch Knicke Knicke können minimiert oder Symmetrien betont werden Informationsvisualisierung 4-50 4.3 Graph Drawing Hierarchischer Ansatz/2 Für gerichtete Graphen wird eine minimale Anzahl von Kanten umgedreht, um einen DAG zu erzeugen. Diese werden aber in ihrer ursprünglichen Richtung gezeichnet. Informationsvisualisierung 4-51 4.3 Graph Drawing Bett fig 2.7 Informationsvisualisierung 4-52 4.3 Graph Drawing Klassischer Algorithmus von Sugiyama, 1981 [K. Sugiyama, S. Tagawa, and M. Toda. “Methods for Visual Understanding of Hierarchical Systems Structures”, IEEE Trans. on Systems, Man, and Cybernetics, 11(2), pp. 109-125, 1981] Sugiyama, 1989 [K. Sugiyama, S. Tagawa, and M. Toda, „Methodes for Visual Understanding of Hierarchical Systems Structures“, IEEE Trans. Systems, Man, and Cybernetics, vol. 11, no. 2, pp. 109-125, 1989] Problem der Schnittminimierung zwischen zwei Ebenen ist bereits NPhart Heuristiken werden benötigt Informationsvisualisierung 4-53 4.3 Graph Drawing Tutte, 1963 [W. Tutte, „How to Draw a Graph“, Proc. London Math. Soc., vol. 3, no. 13, pp. 743-768, 1963] Heuristik legt eine Ordnung der ersten und letzten Ebene fest Jeder Knoten soll im Schwerpunkt seiner Nachbarn (im Graphen) liegen Die führt zu einem linearen Gleichungssystem Vergleich von Heuristiken [M. Laguna and R. Marti, „Heuristics and Meta-Heuristics for 2-Layer Straight Line Crossing Minimization“, URL: http://www-bus.colorado.edu/Faculty/Laguna/, 1999]. Informationsvisualisierung 4-54 4.3 Graph Drawing Informationsvisualisierung 4-55 4.4 Bäume Eigenschaften von Bäumen Eltern-Kind Relation Relationen in der Regel gerichtet Meist mit ausgezeichneten Knoten Wurzel: keine eingehenden Kanten Blätter: keine ausgehenden Kanten Spezielle Algorithmen zum Zeichnen von Bäumen Optimal bezüglich Kriterien Optimal bezüglich Zeitbedarf Informationsvisualisierung 4-56 4.4 Bäume Beispiele von Bäumen Organigramm einer Firma Stammbaum Taxonomie von biologischen Arten Phylogenetische Bäume (Evolution) Software Enginerring Vererbungsbäume (manchmal auf DAGs) Syntaxbäume Informationsvisualisierung 4-57 4.4 Bäume Darstellungen Bäume Gerichtete azyklische Graphen Graphische Darstellung Node-Link-Diagramm Platzfüllendes Diagramm Kriterien Platzeffizienz Abstraktion von Information Einfachheit Navigation Informationsvisualisierung 4-58 4.4 Bäume Horizontales/Vertikales Layout Layout Kriterien Eltern werden über ihren Kindern platziert Knoten der gleichen Ebene (Abstand zur Wurzel) liegen auf der selben horizontalen Linie Reihenfolge der Kinder bleibt erhalten Symmetrie: der Baum und sein Spiegelbild sollen sich entsprechen Teilbäume werden mit den gleichen Regeln erstellt Kleine Teilbäume werden gezielt angeordnet Symmetrie: Kleine, innere Teilbäume werden gleichmäßig zwischen den großen Teilbäumen verteilt Kleine, äußere Bäume sollen nahe den großen Teilbäumen plaziert werden Schmales, platzsparendes Layout Informationsvisualisierung 4-59 4.4 Bäume Walkers Algorithmus [J. Walker. A Node-positioning Algorithm for General Trees. In Software-Practice and Experience, 20(7). pp. 685-705, 1990.] Verbesserung, die garantiert lineare Zeit benötigt [Buchheim, C., Jünger, M., and Leipert, S. 2002. Improving Walker’s Algorithm to Run in Linear Time. In Revised Papers From the 10th international Symposium on Graph Drawing (August 26 - 28, 2002). S. G. Kobourov and M. T. Goodrich, Eds. Lecture Notes In Computer Science, vol. 2528. Springer-Verlag, London, 344-353.] Informationsvisualisierung 4-60 4.4 Bäume Algorithmus benötigt zwei Druchläufe Erster Durchlauf Post-order (links-rechts-Wurzel) Bestimme vorläufige Positionen Komplette Teilbäume sind balanciert entsprechend den LayoutKritierien Zweiter Durchlauf Pre-order (Wurzel-links-rechts, Tiefensuche) Berechnung der endgültigen Positionen Komplexität: 𝑂(𝑛) 𝑛: Anzahl der Knoten Informationsvisualisierung 4-61 4.4 Bäume Beispiel mit k Knoten [A. Kerren. Animation der semantischen Analyse. Master‘s thesis, Universität des Saarlandes, Saarbrücken, 1997, page 102] Informationsvisualisierung 4-62 4.4 Bäume Ausbalancieren der Teilbäume Ergebnis [A. Kerren. Animation der semantischen Analyse. Master‘s thesis, Universität des Saarlandes, Saarbrücken, 1997, page 102] Informationsvisualisierung 4-63 4.4 Bäume Vorteile der Methode Knoten der gleichen Ebene sind auf der gleichen horizontalen Ebene Einfach Symmetrie Nachteile (im Allgemeinen) Hoher Platzbedarf Große Bäume werden sehr breit Viel ungenutzte Zeichenfläche Kein Platz für Bezeichner Informationsvisualisierung 4-64 4.4 Bäume Radiales Layout Konzentrische Kreise Kinder gleicher Entfernung von der Wurzel liegen auf dem selben Kreis Prinzipiell gleiche Kritierien wie horizontales Layout [I. Herman, G. Melancon, M. De Ruiter, and M. Delest. “Latour - A Tree Visualization System”. In Proc. of the Symp. on Graph Drawing, GD’99, pp. 392-399, 1999.] Informationsvisualisierung 4-65 4.4 Bäume Bäume können auch H-förmig ausgelegt werden Wird für Chip-Layout verwendet [P. Eades, „Drawing Free Trees“, Bulletin of the Inst. For the Combinatorics and Its Applications, pp. 10-36, 1992]. Informationsvisualisierung 4-66 4.4 Bäume [TUTTLE ET AL: PEDVIS: A STRUCTURED, SPACE-EFFICIENT TECHNIQUE FOR PEDIGREE VISUALIZATION, InfoVis 2010] Informationsvisualisierung 4-67 4.4 Bäume [TUTTLE ET AL: PEDVIS: A STRUCTURED, SPACE-EFFICIENT TECHNIQUE FOR PEDIGREE VISUALIZATION, InfoVis 2010] Informationsvisualisierung 4-68 4.4 Bäume [TUTTLE ET AL: PEDVIS: A STRUCTURED, SPACE-EFFICIENT TECHNIQUE FOR PEDIGREE VISUALIZATION, InfoVis 2010] Informationsvisualisierung 4-69 4.4 Bäume 3D Layout-Algorithmen zum Zeichnen von Bäumen wurden nach 3D portiert Vorteile Mehr Platz verfügbar Selten Schnitte von Kanten Nachteile Probleme mit der Navigation Verdeckungen Design der Bezeichner Informationsvisualisierung 4-70 4.4 Bäume [Herman I; Melancon G; Marshall MS. Graph visualization and navigation in information visualization: A survey. 2000.] Informationsvisualisierung 4-71 4.4 Bäume Ansatz von Hong und Eades, 2003 [Seokhee Hong and Peter Eades, Drawing Trees Symmetrically in Three Dimensions, Algorithmica, vol. 36, no. 2, 2003.] Teilbäume werden auf Teilebenen gezeichnet Wird eine Partitionierung vorgegeben, so läuft der Algorithmus in linearer Zeit Berechnung der besten, balancierten Partitionierung ist NP-hard [http://www.cs.usyd.edu.au/~shhong/3dtreedraw.htm] Informationsvisualisierung 4-72 4.4 Bäume [Seokhee Hong and Peter Eades, Drawing Trees Symmetrically in Three Dimensions, Algorithmica, vol. 36, no. 2, 2003.] [http://www.cs.usyd.edu.au/~shhong/3dtreedraw.htm] Informationsvisualisierung 4-73 4.4 Bäume [Seokhee Hong and Peter Eades, Drawing Trees Symmetrically in Three Dimensions, Algorithmica, vol. 36, no. 2, 2003.] [http://www.cs.usyd.edu.au/~shhong/3dtreedraw.htm] Informationsvisualisierung 4-74 4.4 Bäume [Seokhee Hong and Peter Eades, Drawing Trees Symmetrically in Three Dimensions, Algorithmica, vol. 36, no. 2, 2003.] [http://www.cs.usyd.edu.au/~shhong/3dtreedraw.htm] Informationsvisualisierung 4-75 4.4 Bäume Cone Trees [G. G. Robertson, J. D. Mackinlay, and S. Card, “Cone trees: Animated 3d visualizations of hierarchical information," in Proceedings of ACM CHI'91, New Orleans, May 1991, 1991, pp. 189 - 194.] 3D Darstellung von Bäumen Die Kindknoten sind auf einem Kreis mit Mittelpunkt Elternknoten auf einer tieferen Ebene angeordnet. Vorteile Bessere Ausnutzung des verfügbaren Platzes Focus & Context Animation Nachteile Knoten verdecken sich Informationsvisualisierung 4-76 4.4 Bäume Cone Trees [G. G. Robertson, J. D. Mackinlay, and S. Card, “Cone trees: Animated 3d visualizations of hierarchical information," in Proceedings of ACM CHI'91, New Orleans, May 1991, 1991, pp. 189 - 194.] [C. Ware. Information Visualization: Perception for Design. 2nd Edition, Morgan Kaufman, San Francisco, ISBN 1-55860-819-2, 2004, page 286] [C. Chen. Information Visualization. Springer, London, Berlin, Heidelberg, 2nd Edition, ISBN 1-85233-789-3, 2004 , page 308] Informationsvisualisierung 4-77 4.4 Bäume Cone Trees [http://www.fask.uni-mainz.de/user/warth/hypertext/diplom/Hypertext-3.5.5.html] Informationsvisualisierung 4-78 4.4 Bäume Cone Trees [J. Carriere and R. Kazman, “Interacting with huge hierarchies: Beyond cone trees,“ in Proceedings of the IEEE Symposium on Information Visualization, (Atlanta, GA), October 1995, 1995, pp. 74-81.] Informationsvisualisierung 4-79 4.4 Bäume [C.-S. Jeong and A. Pang, “Reconfigurable disc trees for visualizing large hierarchical information space," in Proceedings of the 1998 IEEE Symposium on Information Visualization (North Carolina, October 19 - 20, 1998). INFOVIS. IEEE Computer Society, Washington, DC, 1998, pp. 19-25.] Informationsvisualisierung 4-80 4.4 Bäume [C.-S. Jeong and A. Pang, “Reconfigurable disc trees for visualizing large hierarchical information space," in Proceedings of the 1998 IEEE Symposium on Information Visualization (North Carolina, October 19 - 20, 1998). INFOVIS. IEEE Computer Society, Washington, DC, 1998, pp. 19-25.] Informationsvisualisierung 4-81 4.4 Bäume Degree-of-Interest Trees [Card, S. K. and Nation, D. Degree-of-interest trees: a component of an attention-reactive user interface. Advanced Visual Interfaces (AVI 2002). 2002, pp. 22-24. Trento, Italy.] Traditionelle 2D Technik mit folgenden Erweiterungen Darstellung basiert auf einer Einschätzung des Grades an Interesse eines Benutzers Knoten von geringem Interesse werden versteckt Geometrische Skalierung der Knoten entsprechend dem DOI Semantischer Zoom Große, nicht-expandierte Zweige werden geclustert Animation des Fokuswechsels Informationsvisualisierung 4-82 4.4 Bäume Degree-of-Interest Trees [http://davenation.com/doitree/doitree-avi-2002.htm] Informationsvisualisierung 4-83 4.4 Bäume Degree-of-Interest Trees [http://davenation.com/doitree/doitree-avi-2002.htm] Informationsvisualisierung 4-84 4.4 Bäume Botanische Bäume [E. Kleiberg, H. van der Wetering, and J. J. van Wijk. Botanical Visualization of Huge Hierarchies. In Proceedings of the IEEE Symposium on Information Visualization ‘01, pp. 87-94, 2001.] Botanische Metapher Bäume werden als „reale“ Bäume dargestellt Attribute der Blätter werden auf Farbe und Geometrie abgebildet Keine empirische Evaluation Informationsvisualisierung 4-85 4.4 Bäume Botanische Bäume [http://www.win.tue.nl/~vanwijk/botatree.pdf] Informationsvisualisierung 4-86 4.4 Bäume Hyperbolische Bäume In der hyperbolischen Geometrie gelten Gesetze von Euklid. Aber: Zu einer Geraden gibt es mehr als eine parallele Gerade durch einen festen Punkt außerhalb der Geraden. Beim Kleinmodell (nach Felix Klein) wird Kreisscheibe in euklidischer Ebene benutzt. Punkte liegen alle innerhalb Geraden sind Sekanten (enden auf dem Rand) Für hyperbolische Länge gibt es eine Formel, die Linienstücke gleicher hyperbolischer Länge im euklidischen Sinne zum Rand der Scheibe immer kürzer werden lässt Parallelen divergieren Informationsvisualisierung 4-87 4.4 Bäume Hyperbolische Bäume [John Lamping, Ramana Rao, and Peter Pirolli, “A Focus+Context Technique Based on Hyperbolic Geometry for Visualizing Large Hierarchies”, Proceedings of the ACM SIGCHI Conference on Human Factors in Computing Systems, Denver, May 1995, ACM] Inspiration: M. C. Escher „Heaven and Hell“ Focus & Context, Fisheye Animation für Navigation in Ebenen Informationsvisualisierung 4-88 4.4 Bäume Layout Hyperbolische Bäume Rekursiver Algorithmus basierend auf lokaler Information Jeder Knoten belegt ein keilförmiges Segment der Ebene Alle Kinder werden entlang eines Bogens plaziert Die Distanz wird so berechnet, dass alles Platz findet Beobachtung Da Parallelen divergieren, können die Keile der Kinder nicht überlappen Das Layout kann inkrementell erzeugt werden Die minimale Distanz zwischen Geschwistern bestimmt die darstellbare Tiefe Unbalancierte Bäume nutzen den Platz nicht optimal Schließlich muss der Baum zurück in die euklidsche Ebene transformiert werden Informationsvisualisierung 4-89 4.4 Bäume Hyperbolische Bäume Uniform Tiefe: 5 Verzweigungsfaktor: 3 Informationsvisualisierung 4-90 4.4 Bäume Hyperbolische Bäume Fokusänderung Informationsvisualisierung 4-91 4.4 Bäume Informationsvisualisierung 4-92 4.4 Bäume 3D – Verschiebung eines Knotens ins Zentrum 3D – Rotation um den selben Knoten [Tamara Munzner, H3: Laying Out Large Directed Graphs in 3D Hyperbolic Space, 1997] Informationsvisualisierung 4-93 4.4 Bäume Magic Eye View [Kreuseler, Matthias; Lopez, Norma; Schumann, Heidrun.: A Scalable Framework for Information Visualization In: Proceedings IEEE Information Visualization 2000, Salt Lake City, Utah, Oktober 2000.] Projektion auf eine 3D Halbkugel Leicht skalierbar Interaktive Änderung des Projektionszentrums ermöglicht flexiblen Fokus auf jeden Teil der Hierarchie Gebiete im Fokus werden vergrößert dargestellt Der Rest wird verkleinert Fokus & Kontext Informationsvisualisierung 4-94 4.4 Bäume Fokus 3 Ebenen 6 Ebenen [M. Kreuseler, T. Nocke, H. Schumann,Integration of Cluster Analysis and Visualization Techniques for Visual Data Analysis,2003] Informationsvisualisierung 4-95 4.4 Bäume Diskussion Node-Link Darstellung Vorteile Leicht zu verstehen Nachteile Keine optimale Nutzung des Platzes Es ist schwierig weitere Variablen für die Knoten anzuzeigen, wenn man folgende Parameter verwenden will Form Farbe Größe Alle Möglichkeiten vertragen sich nicht mit der Node-Link Struktur Informationsvisualisierung 4-96 4.4 Bäume Platz-füllende Darstellungen Versuchen zwei konzeptuelle Schwächen von Node-Link Darstellungen zu beheben Platzbedarf Darstellungen zusätzlicher (komplexer) Attribute Älteste und bekannteste Darstellung: tree-maps Vorteile: Sehr guter Überblick Nachteile In der Regel werden nur die Kinder dargestellt Informationsvisualisierung 4-97 4.4 Bäume Tree-map (Baumkarte) [B. Johnson and B. Schneiderman, „Tree-Maps: A Space-Filling Approach to the Visualization of Hierarchical Information Structures“, Proc. IEEE Visualization '91, pp. 275-282, 1991] Die Hierarchie wird rekursiv auf Rechtecke abgebildet Jedem Teilbaum wird ein Rechteck zugewiesen Kinder werden innerhalb ihrer Eltern gezeichnet In jeder Ebene wird abwechselnd horizontal und vertikal unterteilt Attribute können dargestellt werden durch Fläche des Rechtecks (z.B. Größe) Farbe des Rechtecks (z.B. Knotentyp) Zusätzlicher Text (z.B. Bezeichner) Informationsvisualisierung 4-98 4.4 Bäume Algorithmus (Darstellung eines Dateiverzeichnisses) Zeichne tree map (Verzeichnis) Wechsle Orientierung (Horizontal/Vertikal) Lese alle Verzeichnisse und Dateien Erzeuge für jedes Elements eine Rechteck, skaliert mit seiner Größe Zeichne die Rechtecke mit der berechneten Größe und der Farbe entsprechend dem Knotentyp Für jedes Verzeichnis Zeichne tree map (Verzeichnis) Informationsvisualisierung 4-99 4.4 Bäume Beispiel RootVerzeichnis a b c i d e f g h Nach [Ware 2004] Informationsvisualisierung 4-100 4.4 Bäume Beispiel a b c i d e f g h Nach [Ware 2004] Informationsvisualisierung 4-101 4.4 Bäume Beispiel a c a b b c i d e i f g h Nach [Ware 2004] Informationsvisualisierung 4-102 4.4 Bäume Beispiel c a d e b a b c i d e i f g h Nach [Ware 2004] Informationsvisualisierung 4-103 4.4 Bäume Beispiel c a f d e b g h i a b c i d e f g h Nach [Ware 2004] Informationsvisualisierung 4-104 4.4 Bäume Vorteile Gut geeignet auch für große, rekursive Hierarchien Platzeffizienter als Baumdiagramme da raumfüllend (Space Filling) Große Elemente sind schnell sichtbar Blattstruktur gut erkennbar Nachteile Standard-TreeMaps (ver-)brauchen Rand plus Fläche Hierarchie selbst ist nicht gut erkennbar Haben u.U. schlechtes Seitenverhältnis Rechteckig statt quadratisch Problematisch bei kleinen Dateien auf oberen Ebenen (lang und schmal) Informationsvisualisierung 4-105 4.4 Bäume Platznutzung Rand plus Fläche begrenzen Elementgröße Kleine Elemente sind schwierig zu unterscheiden [Johnson, Shneiderman 1991] Informationsvisualisierung 4-106 4.4 Bäume Beleuchtung der Elementfelder - Cushioned TreeMaps [Wijk, Wetering, 1999] Grate zum Betonen der Grenzen Grate in zwei Orientierungen: Cushions / Kissen z = ax2 + bx + cy2 + dy + e + = Informationsvisualisierung 4-107 4.4 Bäume Beleuchtung der Elementfelder - Cushioned TreeMaps [Wijk, Wetering, 1999] Informationsvisualisierung 4-108 4.4 Bäume Beleuchtung der Elementfelder - Schwache Beleuchtung von Rechtecken [Fekete, Plaisant, 2002] Partitionsgrenzen erhalten Informationsvisualisierung 4-109 4.4 Bäume 1 Million Elemente [Fekete, Plaisant, 2002] Informationsvisualisierung 4-110 4.4 Bäume Betonung der Hierarchiegrenzen [Bruls et al., 2000] Verstärkung Beleuchtung der Grenzen mit Graten Verbraucht zusätzlichen Platz Informationsvisualisierung 4-111 4.4 Bäume Betonung der Hierarchiegrenzen [Fekete, Plaisant, 2002] Verstärkung Beleuchtung der Grenzen Verbraucht zusätzlichen Platz Informationsvisualisierung 4-112 4.4 Bäume Verbesserung des Seitenverhältnisses (aspect ratio) Verhältnis der Rechteckseiten: Längere Seite / Kürzere Seite Ideal: nahe 1 (Quadrat) Bei großen Werten Lange, schmale Rechtecke Schwierig zu erkennen Informationsvisualisierung 4-113 4.4 Bäume Verbesserung des Seitenverhältnisses Kreisförmiges Layout [Wetzel 2004] Gutes Seitenverhältnis Gute Hierarchiedarstellung Schlechte Platzeffizienz Informationsvisualisierung 4-114 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Slice and Dice Standardverfahren für TreeMaps Erhält Reihenfolge (Ordnung) Ist stabil Bekannte Probleme Vergleichproblem: Welches Rechteck ist größer? ™e miTkciuQ red driw egieznA ruZ “)WZL( FFIT„ ro s serp mokeD .tgitöneb Informationsvisualisierung 4-115 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Cluster TreeMaps [Wattenberg 1999] Unterteilt gleichzeitig vertikal und horizontal Freiheitsgrade werden zum Sortieren nach Ähnlichkeit genutzt Man verliert aber ursprüngliche Ordnung Gleichmäßigere Aufteilung Slice and Dice Informationsvisualisierung Cluster TM 4-116 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Squarified TreeMaps [Bruls et al. 2000] Unterteilt gleichzeitig vertikal und horizontal Elemente teilen vorgegebene Fläche im Verhältnis auf Unterteilt Hierarchieebenen nacheinander Verliert Ordnung Informationsvisualisierung 4-117 4.4 Bäume Verbesserung des Seitenverhältnisses Unterteile in Richtung der kleineren Seite (fülle linke/obere Hälfte der längeren Seite) bis Seitenverhältnisse nicht mehr besser werden (schlechter/gleich gut) Wechsel zur leeren Seite (rechts/unten) Lokales Optimierungsverfahren ähnlich zum steepest Gradient/Hill Climbing Gute (aber nicht optimale) Lösung Informationsvisualisierung 4-118 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Squarified TreeMaps [Bruls et al. 2000] 6 4 6 6 6 6 6 6 4 3 2 2 1 Aspektratio: 8/3 6 6 4/1 3/2 6 6 4 4 6 6 3 49/27 9/4 .... 4 3 2 9/2 6 6 2 2 1 4 3 25/9 Informationsvisualisierung 4-119 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Squarified TreeMaps [Bruls et al. 2000] Informationsvisualisierung 4-120 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Squarified TreeMaps [Bruls et al. 2000] Mit Hierarchieinformation (anderes Filesystem) Informationsvisualisierung 4-121 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Squarified vs. Cluster TreeMaps Problem: Nicht Ordnung-erhaltend Dynamische Änderungen können zu völlig neuem Layout führen. Graustufen repräsentieren die ursprüngliche Ordnung. Informationsvisualisierung 4-122 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Ordered TreeMaps [Shneiderman, Wattenberg 2001] Idee: Platziere Elemente, die in der Ordnung benachbart sind, in benachbarten Rechtecken 1. Sei P (Pivot-Element), das Element mit der größten Fläche 2. Unterteile Feld in vier Teile: R1, RP, R2, R3 3. Platziere P in RP 4. Verteile alle anderen Element auf drei Teillisten: L1, L2, L3, die alle leer sein können 5. Layout von L1, L2, L3 in R1, R2, R3, falls entsprechende Liste nicht leer 6. Unterteile einzelne Teilfelder rekursiv Mit Teilung wird Lokalität heuristisch besser gewahrt Informationsvisualisierung 4-123 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Ordered TreeMaps [Shneiderman, Wattenberg 2001] Teillisten: Alle Elemente von L1 liegen vor P Alle Elemente von L2 und L3 liegen nach P Alle Elemente von L2 liegen vor denen von L3 Das Seitenverhältnis von P soll so nah an 1 wie möglich sein |L3| 1 Informationsvisualisierung 4-124 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Ordered TreeMaps [Shneiderman, Wattenberg 2001, Bederson et al. 2002] Drei Varianten für Pivot-Wahl: Größe (siehe oben) Mittleres Element der Liste Fläche von R1 und R3 sind etwa gleich Graustufen repräsentieren die ursprüngliche Ordnung Informationsvisualisierung 4-125 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - ordered Strip-TreeMap [Bederson et al. 2002] Variation der Squarified TreeMap: Wechselkriterium Horizontal oder Vertikal Erstes Element einfügen mit entsprechender Höhe über ganze Zeile Füge nächstes Element ein und passe Höhe an Veränderung wie squarified tree map. Letzter Strip problematisch. Informationsvisualisierung 4-126 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - ordered Strip-TreeMap [Bederson et al. 2002] Informationsvisualisierung 4-127 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Vergleich: Aktienmarkt 535 Firmen [Bederson et al. 2002] Readability is better if the value is smaller Informationsvisualisierung 4-128 4.4 Bäume Verbesserung des Seitenverhältnisses Rechteckige Layouts - Vergleich: Aktienmarkt 535 Firmen [Bederson et al. 2002]: Fläche: Marktkapitalisierung Informationsvisualisierung 4-129 4.4 Bäume NewsMap [Weskamp et al., 2004] TreeMap für Zeitungsartikel von GoogleNews Größe referenziert auf Anzahl der verwandten Artikel Farbe markiert Nachrichtentyp Informationsvisualisierung 4-130 4.4 Bäume Informationsvisualisierung 4-131 4.4 Bäume Verbesserung des Flächenelements Voronoi-TreeMap [Balzer, Deussen 2005] Voronoi-Diagramm als Ebenenunterteilung Fläche repräsentiert Größe Farbe repräsentiert Hierarchietiefe Guter Aspektratio (1) durch implizite Optimierung durch Voronoi-Zerlegung Ungleichförmige Elemente Informationsvisualisierung 4-132 4.4 Bäume Verbesserung des Flächenelements Voronoi-TreeMap [Balzer et al. 2005] Informationsvisualisierung 4-133 4.4 Bäume Circular Partitions [Onak et al., 2008] Partitionierung der Ebene (auch für höhere Dimensionen) Beliebige Unterteilungsrichtungen Informationsvisualisierung 4-134 4.4 Bäume Zusammenfassung TreeMaps sind kompakte, dichte Darstellung Gut für rekursive Baum-/Hierarchiedarstellungen Hierarchie selbst nicht so gut sichtbar Erhaltung von gutem Seitenverhältnis und der Ordnung wichtig Interaktive Darstellung wichtig Informationsvisualisierung 4-135 4.4 Bäume Beamtrees [F. van Ham and J.J. van Wijk, "Beamtrees : Compact Visualization of Large Hierarchies", Proc. IEEE Conf. Information Visualization 2002, IEEE CS Press, pp. 93-100, 2002.] Nachteil tree maps Es ist schwierig, Betrachtungen über die Struktur der Hierarchie anzustellen (z.B., die Tiefe des Baumes) Beamtrees sind eine Variante der treemaps Herausstellen der Struktur steht im Vordergrund Idee: Knoten-Überlappung anstelle von Schachtelung Geeignet für 2D und 3D Ansichten Informationsvisualisierung 4-136 4.4 Bäume Beamtrees [van Ham, van Wijk, 2002] Vergleich mit tree maps (slice-and-dice) Informationsvisualisierung 4-137 4.4 Bäume Beamtrees [van Ham, van Wijk, 2002] 2D Informationsvisualisierung 4-138 4.4 Bäume Beamtrees [van Ham, van Wijk, 2002] 3D Informationsvisualisierung 4-139 4.4 Bäume Radial-Flächenfüllend Idee: Verwende Kreis-Segmente für die Darstellung von Baumknoten Von innen nach außen mehr Platz Informationsvisualisierung 4-140 4.4 Bäume Semi-Circular Discs [Andrews, K., Heidegger, H. (1998): Information slices: visualising and exploring large hierarchies using cascading, semicircular discs. Proc. IEEE Information Visualization Symposium, Carolina, USA, 9-12.] Verwendet zwei Halbkreise um große Hierarchien anzuzeigen Jede Scheibe stellt mehrere Ebenen der Hierarchie dar Fokus & Context Fokus: Ausdehnung der zweiten Scheibe Textuelle Attribute werden in separaten Bereichen dargestellt, nicht in der Graphik selbst Kodierung Farbe: Typ Winkel: Größe Informationsvisualisierung 4-141 4.4 Bäume Semi-Circular Discs [Andrews, K., Heidegger, H. (1998): Information slices: visualising and exploring large hierarchies using cascading, semicircular discs. Proc. IEEE Information Visualization Symposium, Carolina, USA, 9-12.] Informationsvisualisierung 4-142 4.4 Bäume Sunburst [John Stasko, Eugene Zhang. "Focus+Context Display and Navigation Techniques for Enhancing Radial, Space-Filling Hierarchy Visualizations", p. 57, IEEE Symposium on Information Visualization 2000.] Erweiterung der Semi-Circular Discs um animierte Transitionen und Interaktion Fokus & Kontext: Winkel Detail Detail außen Detail innen Empirische Studie bestätigt Vorteile gegenüber tree maps Zeitbedarf für Navigation Erlernbarkeit Bevorzugung Kodierung wie Semi-Circular Discs Informationsvisualisierung 4-143 4.4 Bäume Sunburst [John Stasko, Eugene Zhang 2000.] [JOHN STASKO, An evaluation of space-filling information visualizations for depicting hierarchical structures, 2000] Informationsvisualisierung 4-144 4.4 Bäume Sunburst [John Stasko, Eugene Zhang 2000.] Winkel Detail Informationsvisualisierung 4-145 4.4 Bäume Sunburst [John Stasko, Eugene Zhang 2000.] Winkel Detail Überblick wird verkleinert Die Fokus-Region wächst keilförmig aus der Peripherie Vorteile Intuitive Nachteile Nicht sehr Platzsparend Informationsvisualisierung 4-146 4.4 Bäume Sunburst [John Stasko, Eugene Zhang 2000.] Detail außen Informationsvisualisierung 4-147 4.4 Bäume Sunburst [John Stasko, Eugene Zhang 2000.] Detail außen Überblick wird verkleinert The Fokus-Region bildet einen Ring um den Kreis Vorteile Platzsparend Nachteile Nicht so intuitiv Anfang der vergößerten Region ist unklar Informationsvisualisierung 4-148 4.4 Bäume Sunburst [John Stasko, Eugene Zhang 2000.] Detail innen Informationsvisualisierung 4-149 4.4 Bäume Sunburst [John Stasko, Eugene Zhang 2000.] Detail innen Überblick wir vergrößert Die Fokus-Region bilder einen Ring in dem Kreis Vorteile Sehr platzsparend Nachteile Wahrscheinlich am wenigsten intuitiv Starke Verzerrung Informationsvisualisierung 4-150 4.4 Bäume InterRing [Jing Yang, Matthew O. Ward, Elke A. Rundensteiner, Anilkumar Patro, InterRing: a visual interface for navigating and manipulating hierarchies. Information Visualization 2(1): 16-30. 2003.] Erweiterung des Sunburst-Ansatzes Mehrere Fokus-Punkte Unterschiedliche Radien für verschiedene Hierarchieebenen Vierte Interaktionstechnik Vergrößerung des Winkels in der Fokus-Region Komprimierung der anderen Informationsvisualisierung 4-151 4.4 Bäume InterRing [Jing Yang, Matthew O. Ward, Elke A. Rundensteiner, Anilkumar Patro, InterRing: a visual interface for navigating and manipulating hierarchies. Information Visualization 2(1): 16-30. 2003.] Winkel Informationsvisualisierung 4-152 4.4 Bäume InterRing [Jing Yang, Matthew O. Ward, Elke A. Rundensteiner, Anilkumar Patro, InterRing: a visual interface for navigating and manipulating hierarchies. Information Visualization 2(1): 16-30. 2003.] Radius Informationsvisualisierung 4-153 4.4 Bäume Icicle Plots [J.B. Kruskal and J.M. Landwehr, Better Displays for Hierarchical Clustering, The American Statistician, May 1983, Vol.- 37, No. 2.] Vergleich der ‚modernen‘ Version mit anderen Techniken Organization Chart Tree ring Icicle Plot Informationsvisualisierung Treemap 4-154 4.5 Graphen Alle besprochenen Baum-Layout-Algorithmen sind vorhersagbar Bei gleichem Eingabegraphen liefern sie gleichen das gleiche Layout Isomorphe Teilbäume werden gleich behandelt → sehr sinnvolle Eigenschaft für Visualisierung Informationsvisualisierung 4-155 4.5 Graphen 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 Informationsvisualisierung 4-156 4.5 Graphen Ungerichtete Graphen können auf verschiedene Weisen behandelt werden Nicht alle Algorithmen liefern zu den gleichen Eingabegraphen das gleiche Layout Isomorphe Teilgraphen haben nicht notwendigerweise das gleiche Layout Informationsvisualisierung 4-157 4.5 Graphen Kraftbasierte Methoden orientieren sich an einem physikalischen Modell mit Kräften bzw. potentieller Energie Energie wird minimiert Das Optimierungsproblem wird lokal gelöst Informationsvisualisierung 4-158 4.5 Graphen Spring Embedder Im Graph Drawing zuerst von P. Eades eingeführt (1984) Zwei 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 4-159 4.5 Graphen 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 𝑣 𝐹 𝑣 = 𝑓𝑢𝑣 + {𝑢,𝑣}∈𝐸 𝑔𝑢𝑣 {𝑢,𝑣}∈𝑉×𝑉 Informationsvisualisierung 4-160 4.5 Graphen Spring Embedder Genauer gilt 𝐹 𝑣 = 𝑘 (1) 𝑢𝑣 𝑑(𝑝𝑢 , 𝑝𝑣 ) − 𝑙𝑢𝑣 {𝑢,𝑣}∈𝐸 𝑘 (2) + {𝑢,𝑣}∈𝑉×𝑉 𝑝𝑢 − 𝑝𝑣 𝑑(𝑝𝑢 , 𝑝𝑣 ) 1 𝑝𝑢 − 𝑝𝑣 𝑢𝑣 (𝑑(𝑝 , 𝑝 ))2 𝑑(𝑝 , 𝑝 ) 𝑢 𝑣 𝑢 𝑣 Mit Zeichnungspositionen 𝑝𝑢 , 𝑝𝑣 Euklidischem Abstand 𝑑(𝑝𝑢 , 𝑝𝑣 ) Federkonstanten 𝑘 (1) 𝑢𝑣 Ladungsbasierter Abstoßungsstärke 𝑘 (2) 𝑢𝑣 Informationsvisualisierung 4-161 4.5 Graphen Spring Embedder Lösung mit numerischen Verfahren mit häufig genutztem intuitiven Ansatz 1. 2. 3. 4. Plaziere Knoten zufällig in der Ebene Berechne Kraft 𝐹(𝑣) für alle Knoten 𝑣 Bewege jeden Knoten 𝑣 ein kleines Stück in Richtung 𝐹(𝑣) 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 Numerik gewöhnlicher Differentialgleichungen Informationsvisualisierung 4-162 4.5 Graphen Spring Embedder Informationsvisualisierung 4-163 4.5 Graphen Spring Embedder Informationsvisualisierung 4-164 4.5 Graphen Spring Embedder Informationsvisualisierung 4-165 4.5 Graphen Spring Embedder Probleme Hohe Laufzeit: 𝑂 𝑛2 Möglicherweise 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 Informationsvisualisierung 4-166 4.5 Graphen 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] Informationsvisualisierung 4-167 4.5 Graphen Baryzentrische Methode [Tutte. Convex Representation of Graphs. Proc. of London Mathematical Society 10(3):304-320, 1960], [Tutte. How to Draw a Graph, Proc. of London Mathematical Society 13(3):743-768, 1963] Vor der Methode von Eades entwickelt Fixiert eine ausgewählte Menge von Knoten als konvexen Rand der Zeichnung. Nutzt Federn der Länge 0 Die Energiefunktion lautet 𝐹 𝑣 = (𝑝𝑢 − 𝑝𝑣 ) {𝑢,𝑣}∈𝐸 Informationsvisualisierung 4-168 4.5 Graphen Baryzentrische Methode Für fixierte Knoten 𝑣 ∈ 𝑉 erhält man so folgende lineare Gleichungen 1 𝑝𝑣 = 𝑝𝑤 + 𝑝𝑢 deg 𝑣 𝑤∈𝑁0 𝑣 𝑢∈𝑁1 𝑣 𝑁0 (𝑣): fixierte Nachbarn von 𝑣 𝑁1 (𝑣): freie Nachbarn von 𝑣 deg 𝑣 = 𝑁0 + |𝑁1 | Bedeutung: Jeder Knoten wird als Schwerpunkt (Barycenter) seiner Nachbarn gezeichnet Informationsvisualisierung 4-169 4.5 Graphen Informationsvisualisierung 4-170 4.5 Graphen Baryzentrische Methode Theorem: Sei 𝐺 ein dreifach zusammenhängender Graph, sei 𝑓 eine Facette einer planaren Einbettung von 𝐺 und sei 𝑃 eine streng konvexe Zeichnung von 𝑓. Dann liefert Barycenter-Draw eine konvexe, planare Zeichnung von 𝐺 mit fixierten Ecken von 𝑓 Informationsvisualisierung 4-171 4.5 Graphen Informationsvisualisierung 4-172 4.5 Graphen Auf graphentheoretischen Distanzen beruhende Kräfte [Kamada, Kawai. An Algorithm for Drawing Undirected Graphs. Information Processing Letters 31(1):7-15, 1989] Definition: Sei 𝐺 = (𝑉, 𝐸) ein zusammenhängender Graph. Für zwei Knoten 𝑢, 𝑣 heißt die Länge 𝛿(𝑢, 𝑣) des kürzesten Weges graphentheoretische Distanz. Ziel dieser Ansätze ist Übereinstimmen von euklidischer Distanz in der Zeichnung und graphentheoretischer Distanz im Graphen Informationsvisualisierung 4-173 4.5 Graphen Auf graphentheoretischen Distanzen beruhende Kräfte Kamada und Kawai wählen daher 𝑘𝑢𝑣 ≔ 𝑘 𝛿(𝑢,𝑣)2 mit Konstante 𝑘 Die potentielle Energie der Feder zur Kante {u,v} wird gesetzt auf 2 𝑘 𝑑 𝑝𝑢 , 𝑝𝑣 𝜂{𝑢,𝑣} = −1 2 𝛿(𝑢, 𝑣) Die potentielle Energie der gesamten Zeichnung wird gesetzt auf 2 𝑘 𝑑 𝑝𝑢 , 𝑝𝑣 𝜂= −1 2 𝛿(𝑢, 𝑣) 𝑢,𝑣∈𝑉 𝑢≠𝑣 Dieser Wert wird dann iterativ minimiert Nach allen Knotenpositionen ableiten Knoten in Richtung mit größter Ableitung bewegen Informationsvisualisierung 4-174 4.5 Graphen Magnetische Felder [Sugiyama, Misue. Graph Drawing by Magnetic Spring Model. Journal of Visual Language Computation 6(3), 1995]. Man kann Federn auch magnetischen Kräften aussetzen, um sie möglichst gleich auszurichten. Dabei werden einige oder alle Federn im Modell magnetisiert . Es wirkt ein globales magnetisches Feld in senkrechter, waagrechter oder radialer Richtung (mit Zentrum). Informationsvisualisierung 4-175 4.5 Graphen Magnetische Felder [Sugiyama, Misue. Graph Drawing by Magnetic Spring Model. Journal of Visual Language Computation 6(3), 1995]. Federn sind wie folgt modelliert: Unidirektional mit Tendenz zur Ausrichtung in Feldrichtung, oder bidirektional mit Ausrichtung nur parallel zum Feld Informationsvisualisierung 4-176 4.5 Graphen Magnetische Felder Unidirektionale Federn und magnetische Kräfte erlauben Auslegen von Digraphen. Informationsvisualisierung 4-177 4.5 Graphen Magnetische Felder Unidirektionale Federn und magnetische Kräfte erlauben Auslegen von Digraphen. Informationsvisualisierung 4-178 4.5 Graphen Allgemeine Energiefunktionen Neben kontinuierlichen Energieansätzen können auch diskrete Ästhetikmaße als Energien genutzt werden Anzahl der Kantenschnitte Anzahl der vertikalen und horizontalen Kanten Anzahl der Knicke Dabei verwendet man als Energie der Zeichnung 𝜂 = 𝜆1 𝜂1 + ⋯ + 𝜆𝑘 𝜂𝑘 Wobei die 𝜂𝑖 , 𝑖 = 1, … , 𝑘 einzelne Kriterien messen li sind die Gewichtungen der Einzelenergien Informationsvisualisierung 4-179 4.5 Graphen Allgemeine Energiefunktionen Die 𝜂𝑖 können folgende Energien enthalten Potentielle Federenergien Potentielle elektrische Energien Potentielle magnetische Energien Informationsvisualisierung 4-180 4.5 Graphen Beispiel allgemeiner Energien [Davidson, Harel. Drawing Graphics Nicely Using Simulated Annealing. ACM Transactions on Graphics 15(4):301-331, 1996] Davidson und Harel verwenden vier Teile 𝜂 = 𝜆1 𝜂1 + 𝜆2 𝜂2 + 𝜆3 𝜂3 + 𝜆4 𝜂4 𝜂1 simuliert eine Art elektrischer Abstoßung 1 𝜂1 = (𝑑 𝑝𝑢 , 𝑝𝑣 )2 𝑢,𝑣∈𝑉 𝜂2 bestraft das Annähern an den Rand 𝜂2 = 1 2+𝑙 2+𝑡 2+𝑏 2 𝑟 𝑢 𝑢 𝑢 𝑢∈𝑉 𝑢 mit Randabständen 𝑟𝑢 , 𝑙𝑢 , 𝑡𝑢 , 𝑏𝑢 Informationsvisualisierung 4-181 4.5 Graphen Beispiel allgemeiner Energien [Davidson, Harel. Drawing Graphics Nicely Using Simulated Annealing. ACM Transactions on Graphics 15(4):301-331, 1996] 𝜂3 bestraft zu lange Kanten (𝑑 𝑝𝑢 , 𝑝𝑣 )2 𝜂3 = {𝑢,𝑣}∈𝐸 𝜂4 hält die Anzahl der Kantenschnitte gering Informationsvisualisierung 4-182 4.5 Graphen Nachteile der Energie-basierten Ansätze Finden nicht immer die beste Lösung Sind stark parameterabhängig Informationsvisualisierung 4-183 4.5 Graphen 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 Informationsvisualisierung 4-184 4.5 Graphen Clustering Insbesondere, wenn Graph zu groß für Darstellung ist, kann man ihn vereinfachen In einigen Anwendungen sind die Graphen bereits geclustert Allgemein: Clustering der Knoten mit folgenden Grundprinzipien Structural-Clustering: es wird nur aufgrund der Struktur des Graphen zusammengefasst Content-based Clustering: es wird die Semantik (insbesondere der Knoten) mit berücksichtigt Fast alle Verfahren basieren auf Structural-Clustering Es ist einfacher umzusetzen Der Ansatz kann auf jeden Graphen unabhängig von der Anwendungsdomäne angewendet werden Informationsvisualisierung 4-185 4.5 Graphen Clustering Es werden praktisch immer disjunkte Cluster erzeugt Aus Clustern wird neuer Graph erzeugt Cluster werden zu Knoten Es wird eine Kante zwischen Clustern gebildet, wenn eine Kante zwischen Elementen der Cluster existiert Informationsvisualisierung 4-186 4.5 Graphen Clustering Für Clustering ist Metrik der Knoten nötig Metriken können strukturell oder inhaltsbasiert sein und ergeben so die beiden Typen des Clusterings. Metrik von Furnas mischt die Distanz von einem Knoten zum anderen mit dem gewünschten Detailgrad für den jeweiligen Bereich des Graphen [Furnas, Generalized Fisheye Views, Human Factors in Computing Systems, CHI'86 Conference Proceedings, 1986, 16-23] Informationsvisualisierung 4-187 4.5 Graphen Clustering Man kann Knoten und Kanten auch einfach einen Relevanzwert geben [Kimelman, Leban, Roth, Zernik, Reduction of visual complexity in dynamic graphs, Proc. Symp. Graph Drawing GD'94, 1994] Für die Repräsentation gibt es drei verschiedene Ansätze Ghosting: unwichtige Kanten und Knoten treten in Hintergrund Hiding: unwichtige Elemente weglassen Grouping: unwichtige Elemente zusammenfassen Informationsvisualisierung 4-188 4.5 Graphen Informationsvisualisierung 4-189 4.5 Graphen Clustering Ansatz von Noack und Lewerentz (Software Systeme) [A. Noack and C. Lewerentz. “A Space of Layout Styles for Hierarchical Graph Models of Software Systems”. ACM SoftVis’05, 2005] Drei Layout-Kriterien Clustering Repräsentation der Hierarchie Verzerrung Verwendet ein Energiemodell mit drei Parametern (𝑐, ℎ, 𝑑) Finde eine Layout, das die Gesamtenergie des Systems minimiert Anwendung Vererbung Methoden-Aufrufe Informationsvisualisierung 4-190 4.5 Graphen Clustering (Noack, Lewerentz) Ein hierarchischer Graph 𝐻 = (𝐺, 𝑇) ist ein gerichteter Graph 𝐺 zusammen mit einem gerichteten Baum 𝑇, so dass alle Blätter von 𝑇 genau die Knoten von 𝐺 sind. 𝑇 heißt hierarchischer Baum von 𝐺. 1 111 112 113 11 121 122 12 13 13 111 112 113 121 122 Hierarchical tree Graph Informationsvisualisierung 4-191 4.5 Graphen Clustering (Noack, Lewerentz) Die Ansicht eines hierarchischen Graphen 𝐻 = (𝐺, 𝑇) ist ein Graph (𝑉, induced 𝑉 ), so dass die Menge 𝑉 für jeden Knoten von 𝐺 genau einen Vorgänger in 𝑇 enthält. (Abstraktion eines hierarchischen Graphen) 111 112 113 121 122 13 11 1 121 Informationsvisualisierung 122 13 4-192 4.5 Graphen Clustering (Noack, Lewerentz) 𝑐 ∈ (0,1] ist der Clustering Parameter c = 0.2 c = 0.5 Informationsvisualisierung c = 1.0 4-193 4.5 Graphen Clustering (Noack, Lewerentz) ℎ ∈ [0,1] ist der Hierachie Parameter 𝑐 = 0,5 und ℎ = 1,0 Oberstes Package Packages der 3. Ebene Informationsvisualisierung Oberste Ebene der Klassen 4-194 4.5 Graphen Clustering (Noack, Lewerentz) d ∈ [0,1] ist der Verzerrungs Parameter 𝑐 = 0,5 und ℎ = 1,0 d = 0,0 d = 0,5 Informationsvisualisierung d = 1,0 4-195 4.5 Graphen 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 4-196 4.5 Graphen 3D Graph Drawing: Linux Kernel [http://www.pabr.org/kernel3d/kernel3d.html] Informationsvisualisierung 4-197 4.5 Graphen 3D Orthogonal graph drawing [D.R. Wood. Three-Dimensional Orthogonal Graph Drawing. PhD Thesis, School of Computer Science and Software Engineering, Monash University, Australia, 2000.] [http://www.cs.nthu.edu.tw/~spoon/3G_Lab/Projects/ortho_drawing.htm] Informationsvisualisierung 4-198 4.6 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.] Informationsvisualisierung 4-199 4.6 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 4-200 4.6 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 Informationsvisualisierung 4-201 4.6 Dynamische Graphen Morphing [http://graphael.cs.arizona.edu/graphael/] Informationsvisualisierung 4-202 4.6 Dynamische Graphen Morphing [http://graphael.cs.arizona.edu/graphael/] Informationsvisualisierung 4-203 4.6 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 Zeichne die Knoten des aktuellen Graphen an den festgelegten Positionen Zeichne die Kanten des aktuellen Graphen Informationsvisualisierung 4-204 4.6 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 Informationsvisualisierung 4-205 4.6 Dynamische Graphen Foresighted Graph Layout [Stephan Diehl. Carsten Görg. Andreas Kerren, Preserving the Mental Map using Foresighted Layout, 2000] Informationsvisualisierung 4-206 4.6 Dynamische Graphen Adaptiv, Kraft-basiert [Y. Frishman, Dynamic Drawing of Clustered Graphs, InfoVis 2007] Informationsvisualisierung 4-207 4.7 InfoVis Techniken Visualization of internet traffic [http://www.unc.edu/depts/jomc/academics/dri/011/growth.html] Byte traffic into the ANS/NSFnet T3 backbone Informationsvisualisierung 4-208 4.7 InfoVis Techniken Visualisierung von Netzwerken: SeeNet [Richard A. Becker, Stephen G. Eick, Allan R. Wilks: Visualizing Network Data, 1995] Informationsvisualisierung 4-209 4.7 InfoVis Techniken Visualisierung von Netzwerken: SeeNet [Richard A. Becker, Stephen G. Eick, Allan R. Wilks: Visualizing Network Data, 1995] Informationsvisualisierung 4-210 4.7 InfoVis Techniken Visualisierung von Netzwerken: SeeNet [Richard A. Becker, Stephen G. Eick, Allan R. Wilks: Visualizing Network Data, 1995] Informationsvisualisierung 4-211 4.7 InfoVis Techniken Visualisierung von Netzwerken: SeeNet [Richard A. Becker, Stephen G. Eick, Allan R. Wilks: Visualizing Network Data, 1995] Informationsvisualisierung 4-212 4.7 InfoVis Techniken Visualisierung von Netzwerken: SeeNet3D [Kenneth C. Cox, Stephen G. Eick, Taosong He, 3D Geographic Network Displays, 1996] Informationsvisualisierung 4-213 4.7 InfoVis Techniken Abstammungsbäume [Bezerianos et al. : GENEAQUILTS: A System for exploring large Genealogies, InfoVis 2010] Informationsvisualisierung 4-214 4.7 InfoVis Techniken Abstammungsbäume [Bezerianos et al. GENEAQUILTS: A System for exploring large Genealogies, InfoVis 2010] Informationsvisualisierung 4-215 4.7 InfoVis Techniken Abstammungsbäume [Michael J. McGuffin, Ravin Balakrishnan. Interactive Visualization of Genealogical Graphs, InfoVis 2005] Informationsvisualisierung 4-216 4.7 InfoVis Techniken Abstammungsbäume [Michael J. McGuffin, Ravin Balakrishnan. Interactive Visualization of Genealogical Graphs, InfoVis 2005] Informationsvisualisierung 4-217 4.7 InfoVis Techniken Abstammungsbäume [Michael J. McGuffin, Ravin Balakrishnan. Interactive Visualization of Genealogical Graphs, InfoVis 2005] Informationsvisualisierung 4-218 4.7 InfoVis Techniken Dynamische Darstellung von Knoten und Kanten [Pak Chung Wong, Patrick Mackey :Dynamic Visualization of Graphs with Extended Labels, INFOVIS, 2005] Informationsvisualisierung 4-219 4.7 InfoVis Techniken Netzwerkvisualisierung mit Semantic Substrates (Semantischer Träger) [B. Shneiderman and A. Aris. Network Visualization by Semantic Substrates. IEEE Transactions on Visualization and Computer Graphics, 12(5), pp. 733-740, 2006] Idee Layout basiert auf Benutzer-definierten Semantic Substrates Keine Überlappung der Bereiche der Knoten Die Plazierung der Knoten hängt von ihren Attributen ab Verwendung von Slidern Um die Sichtbarkeit von Kanten zu kontrollieren Um Kantendurcheinander zu entschärfen Informationsvisualisierung 4-220 4.7 InfoVis Techniken http://www.cs.umd.edu/hcil/pubs/presentations/NVSS-3_files/frame.htm Netzwerkvisualisierung mit Semantic Substrates Informationsvisualisierung 4-221 4.7 InfoVis Techniken Hybride Visualisierung [N. Henry et al., NodeTrix: A Hybrid Visualization of Social Networks, InfoVis 2007] Informationsvisualisierung 4-222 4.7 InfoVis Techniken Hybride Visualisierung [N. Henry et al., NodeTrix: A Hybrid Visualization of Social Networks, InfoVis 2007] Informationsvisualisierung 4-223 4.7 InfoVis Techniken Hybride Visualisierung [N. Henry et al., NodeTrix: A Hybrid Visualization of Social Networks, InfoVis 2007] Informationsvisualisierung 4-224 4.7 InfoVis Techniken Hierarchien [D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009] Informationsvisualisierung 4-225 4.7 InfoVis Techniken Hierarchien [D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009] Informationsvisualisierung 4-226 4.7 InfoVis Techniken Hierarchien [D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009] Informationsvisualisierung 4-227 4.7 InfoVis Techniken Hierarchien [D. Archambault et al., TugGraph: Path-Preserving Hierarchies for Browsing Proximity and Paths in Graphs, PacificVis 2009] Informationsvisualisierung 4-228 4.7 InfoVis Techniken Kantenbündel (Edge Bundles) [Danny Holten, Hierarchical Edge Bundles:Visualization of Adjacency Relations in Hierarchical Data, InfoVis 2006] Informationsvisualisierung 4-229 4.7 InfoVis Techniken Kantenbündel (Edge Bundles) [Danny Holten, Hierarchical Edge Bundles:Visualization of Adjacency Relations in Hierarchical Data, InfoVis 2006] Informationsvisualisierung 4-230 4.7 InfoVis Techniken Graph-Motive (Graph Motifs) [T. von Landesberger et al., Visual Analysis of Graphs with Multiple Connected Components, VAST 2009] Informationsvisualisierung 4-231 4.7 InfoVis Techniken Graph-Motive (Graph Motifs) [T. von Landesberger et al., Visual Analysis of Graphs with Multiple Connected Components, VAST 2009] Informationsvisualisierung 4-232 4.7 InfoVis Techniken Graph-Motive (Graph Motifs) [T. von Landesberger et al., Visual Analysis of Graphs with Multiple Connected Components, VAST 2009] Informationsvisualisierung 4-233 4.7 InfoVis Techniken Hybrid Visualisierung und Clustering [V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010] Informationsvisualisierung 4-234 4.7 InfoVis Techniken Hybrid Visualisierung und Clustering [V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010] Informationsvisualisierung 4-235 4.7 InfoVis Techniken Hybrid Visualisierung und Clustering [V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010] Informationsvisualisierung 4-236 4.7 InfoVis Techniken Hybrid Visualisierung und Clustering [V. Batagelj, Visual Analysis of Large Graphs Using (X,Y)-clustering and Hybrid Visualizations, PacificVis 2010] Informationsvisualisierung 4-237 4.8 Ausblick Offene Fragen und Trends Einige Graphentypen sind bisher weniger beachtet worden: Hypergraphen lassen sich als bipartite Graphen auffassen Für jede Hyperkante ein Zusatzknoten einfügt wird Dieser wird dann mit den übrigen Knoten der Hyperkante verbunden Die Zeichnung kann dann mit einem Standard-Algorithmus erfolgen Anwendungen (z. B. Stoffwechsel in der Biologie) erfordern besondere Erweiterungen, die Gegenstand aktueller Arbeiten sind Informationsvisualisierung 4-238 4.8 Ausblick Offene Fragen und Trends Visualisierung sehr großer Graphen mit mehreren Millionen oder gar Milliarden Knoten und Kanten Der Abstammungsbaum aller biologischen Arten Alle Webseiten Netze: Festnetztelefone, Handynetz, Internet Soziale Netzwerke Ansätze des Graphenzeichnens müssen mit schneller Interaktion und effizienten Datenstrukturen verknüpft werden Informationsvisualisierung 4-239 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. Informationsvisualisierung 4-240