Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Layout- und Filterverfahren zur Graphdarstellung in GroIMP

Ähnliche Präsentationen


Präsentation zum Thema: "Layout- und Filterverfahren zur Graphdarstellung in GroIMP"—  Präsentation transkript:

1 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Birka Fonkeng

2 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Inhaltsverzeichnis Einleitung Layoutalgorithmen Arten Zusatzfeatures/Verbesserungen der Layouts in GroIMP Filter Definition der Filter und Anwendung Zusammenfassung Quellenangaben :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

3 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Einleitung Graph Nutzung zur graphischen Visualisierung von Problemen möglich, Knoten = Objekte, Kanten = Beziehungen GroIMP1 3D-Modellierungsplattform auf der Grundlage von relationalen Wachstumsgrammatiken Relationale Wachstumsgrammatiken2 Parallele Graph-Grammatiken, insbes. zur Repräsentation von biologischen Strukturen und Prozessen :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

4 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
GroIMP - Graphansicht :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

5 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Layoutalgorithmen Berechnung von visuellen Abbildungen von Graphen Ästhetikkriterien:3 Nähe verbundener Knoten zueinander (closeness) Abstand der Knoten zueinander (smallest separation) Gleichmäßige Knotenverteilung (uniform distribution) Größe des Zeichenfensters (adaption to the frame) Einheitliche Kantenlängen (fixed edge length) Minimierung Kantenüberkreuzungen (edge crossing minimization) Berücksichtigung Kantenrichtungen (edge directions) :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

6 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Layoutalgorithmen Arten: Knotenbasierte Layoutverfahren Einfach Hierarchisch Kräftebasiert Energiebasiert Kantenbasierte Layoutverfahren :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

7 Einfache Layoutalgorithmen
Beispiele:4 Random Zufallsbasierte Anordnung der Knoten Square Anordnung der Knoten in einem Raster Circle Anordnung der Knoten auf einem oder mehreren Kreisen :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

8 Hierarchiebasierte Layoutalgorithmen
Vorhandensein von Wurzel(n), gerichteten Kanten Von der Wurzel ausgehend, bereits besuchte Knoten werden markiert Anordnung der Knoten, je nach Entfernung von der Wurzel, auf Schichten Tree4 Tiefensuche Sugiyama3 Zusätzlich Kantenüberkreuzungsminimierung nach der Barycenter-Methode :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

9 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Barycenter-Methode Nach Anordnung der Knoten auf Schichten: Jeweils Betrachtung zweier benachbarter Schichten Kantenüberkreuzungsminimierung durch Berechnung der Barycenter und Neupositionierung der Knoten in der zweiten Schicht: :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

10 Kräftebasierte Layoutalgorithmen
Verbundene Knoten ziehen sich an, unverbundene stoßen sich ab Anziehung → positive Kraft Abstoßung → negative Kraft Summe der Kräfte aller Knoten (maxForce) im Idealfall = 0 Spring-Layout :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

11 Kräftebasierte Layoutalgorithmen
Für eine bestimmte Anzahl von Iterationen: Wenn maxForce > akzeptable Differenz von 0 sumForce = (0,0) Für alle Knoten n: n.layoutVarX := n.layoutVarY := 0 Für alle Knotenpaare n, m: Berechnung abstoßende Kraft repForce Wenn n ausgehende Kante e mit m: sumForce := repForce + anziehende Kraft attrForce Wenn n eingehende Kante e zu m: sumForce := repForce – anziehende Kraft attrForce n.layoutVarX/Y -= sumForce; m.layoutVarX/Y += sumForce maxForce := MAX(|layoutVarX/Y|) Koordinaten von n += n.layoutVarX/Y :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

12 Kräftebasierte Layoutalgorithmen
Beispiel: Spring Embedder Einfachstes Verfahren repForce von Knotenpaar n, m mit repulsion = const.: attrForce von Knotenpaar n, m verbunden durch Kante e mit attraction = const.: :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

13 Kräftebasierte Layoutalgorithmen
Weitere Beispiele: Eades5 Berücksichtigung Entfernungen der Knoten voneinander Fruchterman-Reingold5 Ideale Entfernung von Knoten abhängig von Größe der Zeichenfläche und der Knotenanzahl Davidson-Harel6 Simulated Annealing, Minimierung Kostenfunktion :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

14 Energiebasierte Layoutalgorithmen
Energy7 R-PolyLog-Energiemodell Grad der Clusterung einstellbar Energieminimierung durch den Barnes-Hut-Algorithmus Rekursive Einteilung des Graphen in Subtrees :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

15 Kantenbasierte Layoutalgorithmen
Berücksichtigung der Kantentypen (GroIMP: 2 Standard-Kantentypen + bel. viele nutzerdefinierte) Beispiele: Simple Edge-Based Jeder Kantentyp bekommt einen eindeutigen Richtungsvektor zugewiesen Einheitliche Kantenlänge Edge-Based2 Erweiterung des Simple Edge-Based-Layouts Die Kanten der beiden am häufigsten vorkommenden Kantentypen werden achsenparallel gezeichnet, können eine andere Kantenlänge zugewiesen bekommen als die übrigen :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

16 Kantenbasierte Layoutalgorithmen
Problem: Knotenüberlagerungen Solange Test positiv ist: Addition einer Konstante zum Richtungsvektor Bei großen Graphen zusätzlich Verlängerung der Kanten :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

17 Zusatzfeatures der Layoutverfahren in GroIMP
Setzen des ersten Knoten auf eine feste Position Kräftebasiert: In die Mitte des Zeichenfensters Random, Square: obere linke Ecke des Zeichenfensters Anpassung des Graphlayouts an das Zeichenfenster (automatische Verschiebung, Zoomen) Drehung/Spiegelung einiger ausgewählter Layouts :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

18 Zusatzfeatures der Layoutverfahren in GroIMP
Interpolation Animierter Übergang vom aktuellen Graphenbild zum gewünschten Layout Anzahl der Zwischenschritte einstellbar :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

19 Aktuelle Verbesserungen
Erhöhung der Stabilität der Layoutverfahren durch Prüfen der eingestellten Parameter Hinweise, Fehlermeldungen in Statusleiste Z. B. Hinweis nach Abbruch der neuen Layoutberechnung wegen ungünstiger Parameterwahl Setzen des ersten Knoten bei kräftebasierten Verfahren verschlechtert nicht mehr kurzfristig die zu minimierende Gesamtkraft :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

20 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Methoden, die auf Graphstrukturen angewendet werden können, um für den Benutzer bedeutsame Substrukturen von den unwichtigen Informationen graphisch trennen zu können Arten: Verstecken Hervorheben Zusammenfassen :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

21 GroIMP - Filterauswahl
(Nachher) :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

22 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Filterdefinition XML-Datenformat: Für jede Filterart ein eigener Bereich, beliebig oft wiederholbar Einheitliche Definition der Suchkriterien Einheitliche Definition der Attributänderungen <SubNodes> - Anwendung des Filters auf den gesamten Teilbaum ab dem Knoten, der den Suchkriterien entspricht :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

23 Demonstration der Filterverfahren
Beispiel einer XML-Datei Ergebnis: Graph nach Filteranwendung (Vorher) :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

24 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Zusammenfassung Layoutalgorithmen und Filter effektive Mittel zur Verbesserung der Übersichtlichkeit von Graphstrukturen Berücksichtigung verschiedener Arten von Graphen und Sichtweisen auf diese Mathematische Modelle allein nicht ausreichend für befriedigende Ansichten GroIMP: Plugin-Schnittstellen bieten Platz für Erweiterungen und Verbesserungen :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

25 Vielen Dank für Ihre Aufmerksamkeit!

26 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Quellenangaben 1Winfried Kurth, Gerhard Buck-Sorlin, Ole Kniemeyer. GroIMP. URL: Lehrstuhl Grafische Systeme, BTU Cottbus, 2Winfried Kurth, Gerhard Buck-Sorlin, Ole Kniemeyer. Relationale Wachstumsgrammatiken: Ein Formalismus zur Spezifikation multiskalierter Struktur-Funktions-Modelle von Pflanzen. In: Modellierung pflanzlicher Systeme aus historischer und aktueller Sicht. Schriftenreihe des Landesamtes für Verbraucherschutz, Landwirtschaft und Flurneuordnung Brandenburg, Band 7, 2006, S 3Kozo Sugiyama. Graph Drawing and Applications for Software and Knowledge Engineers. World Scientific Publishing, Singapore, 2002. 4Dexu Zhao. Simulation und Visualisierung der Struktur und Dynamik metabolischer Netzwerke mit relationalen Wachstumsgrammatiken. Diplomarbeit, Lehrstuhl Grafische Systeme an der Brandenburgischen Technischen Universität Cottbus, 2006. :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP

27 Layout- und Filterverfahren zur Graphdarstellung in GroIMP
Quellenangaben 5Thomas M. J. Fruchterman, Edward M. Reingold. Graph Drawing by Force-Directed Placement. In: Software - Practice and Experience, Vol. 21, Nr. 11, 1991, S 6Ron Davidson, David Harel. Drawing Graphs Nicely Using Simulated Annealing. In: ACM Transactions on Graphics, Vol. 15, Nr. 4, 1996, S 7Andreas Noack. Energy Models for Drawing Clustered Small-World Graphs. Computer Science Report, 07/03, BTU Cottbus, :03 Layout- und Filterverfahren zur Graphdarstellung in GroIMP


Herunterladen ppt "Layout- und Filterverfahren zur Graphdarstellung in GroIMP"

Ähnliche Präsentationen


Google-Anzeigen