TY - THES A1 - Zink, Johannes T1 - Algorithms for Drawing Graphs and Polylines with Straight-Line Segments T1 - Algorithmen zum Zeichnen von Graphen und Polygonzügen mittels Strecken N2 - Graphs provide a key means to model relationships between entities. They consist of vertices representing the entities, and edges representing relationships between pairs of entities. To make people conceive the structure of a graph, it is almost inevitable to visualize the graph. We call such a visualization a graph drawing. Moreover, we have a straight-line graph drawing if each vertex is represented as a point (or a small geometric object, e.g., a rectangle) and each edge is represented as a line segment between its two vertices. A polyline is a very simple straight-line graph drawing, where the vertices form a sequence according to which the vertices are connected by edges. An example of a polyline in practice is a GPS trajectory. The underlying road network, in turn, can be modeled as a graph. This book addresses problems that arise when working with straight-line graph drawings and polylines. In particular, we study algorithms for recognizing certain graphs representable with line segments, for generating straight-line graph drawings, and for abstracting polylines. In the first part, we first examine, how and in which time we can decide whether a given graph is a stick graph, that is, whether its vertices can be represented as vertical and horizontal line segments on a diagonal line, which intersect if and only if there is an edge between them. We then consider the visual complexity of graphs. Specifically, we investigate, for certain classes of graphs, how many line segments are necessary for any straight-line graph drawing, and whether three (or more) different slopes of the line segments are sufficient to draw all edges. Last, we study the question, how to assign (ordered) colors to the vertices of a graph with both directed and undirected edges such that no neighboring vertices get the same color and colors are ascending along directed edges. Here, the special property of the considered graph is that the vertices can be represented as intervals that overlap if and only if there is an edge between them. The latter problem is motivated by an application in automated drawing of cable plans with vertical and horizontal line segments, which we cover in the second part. We describe an algorithm that gets the abstract description of a cable plan as input, and generates a drawing that takes into account the special properties of these cable plans, like plugs and groups of wires. We then experimentally evaluate the quality of the resulting drawings. In the third part, we study the problem of abstracting (or simplifying) a single polyline and a bundle of polylines. In this problem, the objective is to remove as many vertices as possible from the given polyline(s) while keeping each resulting polyline sufficiently similar to its original course (according to a given similarity measure). N2 - Graphen stellen ein wichtiges Mittel dar, um Beziehungen zwischen Objekten zu modellieren. Sie bestehen aus Knoten, die die Objekte repräsentieren, und Kanten, die Beziehungen zwischen Paaren von Objekten abbilden. Um Menschen die Struktur eines Graphen zu vermitteln, ist es nahezu unumgänglich den Graphen zu visualisieren. Eine solche Visualisierung nennen wir Graphzeichnung. Eine Graphzeichnung ist geradlinig, wenn jeder Knoten als ein Punkt (oder ein kleines geometrisches Objekt, z. B. ein Rechteck) und jede Kante als eine Strecke zwischen ihren beiden Knoten dargestellt ist. Eine sehr einfache geradlinige Graphzeichnung, bei der alle Knoten eine Folge bilden, entlang der die Knoten durch Kanten verbunden sind, nennen wir Polylinie. Ein Beispiel für eine Polylinie in der Praxis ist eine GPS-Trajektorie. Das zugrundeliegende Straßennetzwerk wiederum kann als Graph repräsentiert werden. In diesem Buch befassen wir uns mit Fragen, die sich bei der Arbeit mit geradlinigen Graphzeichnungen und Polylinien stellen. Insbesondere untersuchen wir Algorithmen zum Erkennen von bestimmten mit Strecken darstellbaren Graphen, zum Generieren von geradlinigen Graphzeichnungen und zum Abstrahieren von Polylinien. Im ersten Teil schauen wir uns zunächst an, wie und in welcher Zeit wir entscheiden können, ob ein gegebener Graph ein Stickgraph ist, das heißt, ob sich seine Knoten als vertikale und horizontale Strecken auf einer diagonalen Geraden darstellen lassen, die sich genau dann schneiden, wenn zwischen ihnen eine Kante liegt. Anschließend betrachten wir die visuelle Komplexität von Graphen. Konkret untersuchen wir für bestimmte Graphklassen, wie viele Strecken für jede geradlinige Graphzeichnung notwendig sind, und, ob drei (oder mehr) verschiedene Streckensteigungen ausreichend sind, um alle Kanten zu zeichnen. Zuletzt beschäftigen wir uns mit der Frage, wie wir den Knoten eines Graphen mit gerichteten und ungerichteten Kanten (geordnete) Farben zuweisen können, sodass keine benachbarten Knoten dieselbe Farbe haben und Farben entlang gerichteter Kanten aufsteigend sind. Hierbei ist die spezielle Eigenschaft der betrachteten Graphen, dass sich die Knoten als Intervalle darstellen lassen, die sich genau dann überschneiden, wenn eine Kanten zwischen ihnen verläuft. Das letztgenannte Problem ist motiviert von einer Anwendung beim automatisierten Zeichnen von Kabelplänen mit vertikalen und horizontalen Streckenverläufen, womit wir uns im zweiten Teil befassen. Wir beschreiben einen Algorithmus, welcher die abstrakte Beschreibung eines Kabelplans entgegennimmt und daraus eine Zeichnung generiert, welche die speziellen Eigenschaften dieser Kabelpläne, wie Stecker und Gruppen von zusammengehörigen Drähten, berücksichtigt. Anschließend evaluieren wir die Qualität der so erzeugten Zeichnungen experimentell. Im dritten Teil befassen wir uns mit dem Abstrahieren bzw. Vereinfachen einer einzelnen Polylinie und eines Bündels von Polylinien. Bei diesem Problem sollen aus einer oder mehreren gegebenen Polylinie(n) so viele Knoten wie möglich entfernt werden, wobei jede resultierende Polylinie ihrem ursprünglichen Verlauf (nach einem gegeben Maß) hinreichend ähnlich bleiben muss. KW - Graphenzeichnen KW - Algorithmische Geometrie KW - Algorithmus KW - Algorithmik KW - Polygonzüge KW - graph drawing KW - complexity KW - algorithms KW - straight-line segments KW - polylines KW - graphs KW - Strecken KW - Graphen Y1 - 2024 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-354756 ER - TY - THES A1 - Kryven, Myroslav T1 - Optimizing Crossings in Circular-Arc Drawings and Circular Layouts T1 - Kreuzungsoptimierung in Graphenzeichnungen mit Kreisbogen und in Kreiszeichnungen N2 - A graph is an abstract network that represents a set of objects, called vertices, and relations between these objects, called edges. Graphs can model various networks. For example, a social network where the vertices correspond to users of the network and the edges represent relations between the users. To better see the structure of a graph it is helpful to visualize it. The research field of visualizing graphs is called Graph Drawing. A standard visualization is a node-link diagram in the Euclidean plane. In such a representation the vertices are drawn as points in the plane and edges are drawn as Jordan curves between every two vertices connected by an edge. Edge crossings decrease the readability of a drawing, therefore, Crossing Optimization is a fundamental problem in Graph Drawing. Graphs that can be drawn with few crossings are called beyond-planar graphs. The topic that deals with definition and analysis of beyond-planar graphs is called Beyond Planarity and it is an important and relatively new research area in Graph Drawing. In general, beyond planar graphs posses drawings where edge crossings are restricted in some way. For example, the number of crossings may be bounded by a constant independent of the size of the graph. Crossings can also be restricted locally by, for example, restricting the number of crossings per edge, restricting the number of pairwise crossing edges, or bounding the crossing angle of two edges in the drawing from below. This PhD thesis defines and analyses beyond-planar graph classes that arise from such local restrictions on edge crossings. N2 - Ein Graph ist eine Datenstruktur bestehend aus einer Menge von Objekten (die Knoten genannt werden) und einer Menge von Beziehungen (die Kanten genannt werden) zwischen Paaren von Objekten. Graphen modellieren verschiedene Arten von Netzwerken. Um die Struktur eines Graphen zu verdeutlichen, ist es hilfreich den Graphen zu visualisieren. Das Forschungsgebiet der Visualisierung von Graphen heißt Graphenzeichnen. Eine klassische Visualisierungsmethode für Graphen sind sogenannte Node-Link-Diagramme. Bei dieser Darstellung werden die Knoten als Punkte gezeichnet und für jedes Paar von Knoten, die im Graph benachbart sind, werden die entsprechenden Punkte durch eine Kurve verbunden. Bei solchen Darstellungen möchte man Kreuzungen zwischen Kanten vermeiden, weil Kreuzungen die Lesbarkeit einer Zeichnung verringern. Deswegen ist Kreuzungsminimierung ein fundamentales Thema im Graphenzeichnen. Graphen, die mit wenig Kreuzungen gezeichnet werden können, heißen beyond-planar. Das Thema, das sich mit Definition und Analyse von beyond-planaren Graphen beschäftigt, heißt Beyond Planarity und ist ein wichtiges, noch recht junges Forschungsgebiet im Graphenzeichnen. Generell gilt für beyond-planare Graphen, dass sie eine Zeichnung besitzen, bei der die Art der Kreuzungen irgendwie eingeschränkt ist; zum Beispiel, wenn die Anzahl der Kreuzungen durch eine Konstante beschränkt ist (unabhängig von der Größe des Graphen). Kreuzungen können auch lokal beschränkt werden, indem wir zum Beispiel höchstens eine konstante Anzahl von Kreuzungen pro Kante erlauben oder höchstens eine konstante Anzahl von sich paarweise kreuzenden Kanten erlauben. Kreuzungen können auch dadurch beschränkt werden, dass wir den Winkel, unter dem sich kreuzende Kanten schneiden, nach unten beschränken. Diese Dissertation beschäftigt sich mit Klassen von beyond-planaren Graphen, die durch solche lokalen Einschränkungen von Kreuzungen definiert sind. N2 - A graph is an abstract network that represents a set of objects, called vertices, and relations between these objects, called edges. Graphs can model various networks. For example, a social network where the vertices correspond to users of the network and the edges represent relations between the users. To better see the structure of a graph it is helpful to visualize it. A standard visualization is a node-link diagram in the Euclidean plane. In such a representation the vertices are drawn as points in the plane and edges are drawn as Jordan curves between every two vertices connected by an edge. Edge crossings decrease the readability of a drawing, therefore, Crossing Optimization is a fundamental problem in Computer Science. This book explores the research frontiers and introduces novel approaches in Crossing Optimization. KW - Graphenzeichnen KW - graph drawing KW - beyond planarity KW - circular-arc drawings KW - circular layouts KW - crossing minimization Y1 - 2022 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-245960 SN - 978-3-95826-174-7 SN - 978-3-95826-175-4 N1 - Parallel erschienen als Druckausgabe in Würzburg University Press, 978-3-95826-174-7, 28,90 Euro. ER - TY - THES A1 - Kindermann, Philipp T1 - Angular Schematization in Graph Drawing N2 - Graphs are a frequently used tool to model relationships among entities. A graph is a binary relation between objects, that is, it consists of a set of objects (vertices) and a set of pairs of objects (edges). Networks are common examples of modeling data as a graph. For example, relationships between persons in a social network, or network links between computers in a telecommunication network can be represented by a graph. The clearest way to illustrate the modeled data is to visualize the graphs. The field of Graph Drawing deals with the problem of finding algorithms to automatically generate graph visualizations. The task is to find a "good" drawing, which can be measured by different criteria such as number of crossings between edges or the used area. In this thesis, we study Angular Schematization in Graph Drawing. By this, we mean drawings with large angles (for example, between the edges at common vertices or at crossing points). The thesis consists of three parts. First, we deal with the placement of boxes. Boxes are axis-parallel rectangles that can, for example, contain text. They can be placed on a map to label important sites, or can be used to describe semantic relationships between words in a word network. In the second part of the thesis, we consider graph drawings visually guide the viewer. These drawings generally induce large angles between edges that meet at a vertex. Furthermore, the edges are drawn crossing-free and in a way that makes them easy to follow for the human eye. The third and final part is devoted to crossings with large angles. In drawings with crossings, it is important to have large angles between edges at their crossing point, preferably right angles. N2 - Graphen sind häufig verwendete Werkzeuge zur Modellierung von Zusammenhängen zwischen Daten. Ein Graph ist eine binäre Relation zwischen Objekten, das heißt er besteht aus einer Menge von Objekten (Knoten) und einer Menge von Paaren von Objekten (Kanten). Netzwerke sind übliche Beispiele für das Modellieren von Daten als ein Graph. Beispielsweise lassen sich Beziehungen zwischen Personen in einem sozialen Netzwerk oder Netzanbindungen zwischen Computern in einem Telekommunikationsnetz als Graph darstellen. Die modellierten Daten können am anschaulichsten dargestellt werden, indem man die Graphen visualisiert. Der Bereich des Graphenzeichnens behandelt das Problem, Algorithmen zum automatischen Erzeugen von Graphenvisualisierungen zu finden. Das Ziel ist es, eine "gute" Zeichnung zu finden, was durch unterschiedliche Kriterien gemessen werden kann; zum Beispiel durch die Anzahl der Kreuzungen zwischen Kanten oder durch den Platzverbrauch. In dieser Arbeit beschäftigen wir uns mit Winkelschematisierung im Graphenzeichnen. Darunter verstehen wir Zeichnungen, in denen die Winkel (zum Beispiel zwischen Kanten an einem gemeinsamen Knoten oder einem Kreuzungspunkt) möglichst groß gestaltet sind. Die Arbeit besteht aus drei Teilen. Im ersten Teil betrachten wir die Platzierung von Boxen. Boxen sind achsenparallele Rechtecke, die zum Beispiel Text enthalten. Sie können beispielsweise auf einer Karte platziert werden, um wichtige Standorte zu beschriften, oder benutzt werden, um semantische Beziehungen zwischen Wörtern in einem Wortnetzwerk darzustellen. Im zweiten Teil der Arbeit untersuchen wir Graphenzeichnungen, die den Betrachter visuell führen. Im Allgemeinen haben diese Zeichnungen große Winkel zwischen Kanten, die sich in einem Knoten treffen. Außerdem werden die Verbindungen kreuzungsfrei und so gezeichnet, dass es dem menschlichen Auge leicht fällt, ihnen zu folgen. Im dritten und letzten Teil geht es um Kreuzungen mit großen Winkeln. In Zeichnungen mit Kreuzungen ist es wichtig, dass die Winkel zwischen Kanten an Kreuzungspunkten groß sind, vorzugsweise rechtwinklig. KW - graph drawing KW - angular schematization KW - boundary labeling KW - contact representation KW - word clouds KW - monotone drawing KW - smooth orthogonal drawing KW - simultaneous embedding KW - right angle crossing KW - independent crossing KW - Graphenzeichnen KW - Winkel KW - Kreuzung KW - v Y1 - 2016 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-112549 SN - 978-3-95826-020-7 (print) SN - 978-3-95826-021-4 (online) PB - Würzburg University Press CY - Würzburg ER - TY - THES A1 - Fink, Martin T1 - Crossings, Curves, and Constraints in Graph Drawing T1 - Kreuzungen, Kurven und Constraints beim Zeichnen von Graphen N2 - In many cases, problems, data, or information can be modeled as graphs. Graphs can be used as a tool for modeling in any case where connections between distinguishable objects occur. Any graph consists of a set of objects, called vertices, and a set of connections, called edges, such that any edge connects a pair of vertices. For example, a social network can be modeled by a graph by transforming the users of the network into vertices and friendship relations between users into edges. Also physical networks like computer networks or transportation networks, for example, the metro network of a city, can be seen as graphs. For making graphs and, thereby, the data that is modeled, well-understandable for users, we need a visualization. Graph drawing deals with algorithms for visualizing graphs. In this thesis, especially the use of crossings and curves is investigated for graph drawing problems under additional constraints. The constraints that occur in the problems investigated in this thesis especially restrict the positions of (a part of) the vertices; this is done either as a hard constraint or as an optimization criterion. N2 - Viele Probleme, Informationen oder Daten lassen sich mit Hilfe von Graphen modellieren. Graphen können überall dort eingesetzt werden, wo Verbindungen zwischen unterscheidbaren Objekten auftreten. Ein Graph besteht aus einer Menge von Objekten, genannt Knoten, und einer Menge von Verbindungen, genannt Kanten, zwischen je einem Paar von Knoten. Ein soziales Netzwerk lässt sich etwa als Graph modellieren, indem die teilnehmenden Personen als Knoten und Freundschaftsbeziehungen als Kanten dargestellt werden. Physikalische Netzwerke wie etwa Computernetze oder Transportnetze - wie beispielsweise das U-Bahnliniennetz einer Stadt - lassen sich ebenfalls als Graph auffassen. Um Graphen und die damit modellierten Daten gut erfassen zu können benötigen wir eine Visualisierung. Das Graphenzeichnen befasst sich mit dem Entwickeln von Algorithmen zur Visualisierung von Graphen. Diese Dissertation beschäftigt sich insbesondere mit dem Einsatz von Kreuzungen und Kurven beim Zeichnen von Graphen unter Nebenbedingungen (Constraints). Die in den untersuchten Problemen auftretenden Nebenbedingungen sorgen unter anderem dafür, dass die Lage eines Teils der Knoten - als feste Anforderung oder als Optimierungskriterium - vorgegeben ist. KW - Graphenzeichnen KW - Kreuzung KW - Kurve KW - Graph KW - graph drawing KW - crossing minimization KW - curves KW - labeling KW - metro map KW - Kreuzungsminimierung KW - Landkartenbeschriftung KW - U-Bahnlinienplan Y1 - 2014 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-98235 SN - 978-3-95826-002-3 (print) SN - 978-3-95826-003-0 (online) PB - Würzburg University Press ER - TY - THES A1 - Eichelberger, Holger T1 - Aesthetics and automatic layout of UML class diagrams T1 - Ästhetik und automatisches Layout von UML Klassendiagrammen N2 - In the last years, visual methods have been introduced in industrial software production and teaching of software engineering. In particular, the international standardization of a graphical software engineering language, the Unified Modeling Language (UML) was a reason for this tendency. Unfortunately, various problems exist in concrete realizations of tools, e.g. due to a missing compliance to the standard. One problem is the automatic layout, which is required for a consistent automatic software design. The thesis derives reasons and criteria for an automatic layout method, which produces drawings of UML class diagrams according to the UML specification and issues of human computer interaction, e.g. readability. A unique set of aesthetic criteria is combined from four different disciplines involved in this topic. Based on these aethetic rules, a hierarchical layout algorithm is developed, analyzed, measured by specialized measuring techniques and compared to related work. Then, the realization of the algorithm as a Java framework is given as an architectural description. Finally, adaptions to anticipated future changes of the UML, improvements of the framework and example drawings of the implementation are given. N2 - Visuelle Techniken im Software-Entwurf haben in den letzten Jahre Einzug in Industrie und Lehre gehalten. Begünstigt wurde dies durch die Unified Modeling Language (UML), eine international standardisierte, graphische Entwurfssprache. Dennoch klaffen weite Lücken bei der Umsetzung in konkrete Tools, teils an der Realisierung des Standards, insbesondere aber auch beim automatischen Layout, das für konsistenten (teil-)automatisierten Softwareentwurf unerlässlich ist. Die Arbeit stellt zunächst Gründe und Kriterien für ein standardkonformes, menschenlesbares automatisches Layout von UML Klassendiagrammen zusammen. Ästhetische Kriterien werden aus vier unterschiedlichen Fachdisziplinen destilliert und kombiniert. Basierend auf diesen Kriterien wird danach ein hierarchischer Layoutalgorithmus entwickelt, analysiert, mit speziellen Messverfahren vermessen und mit Konkurrenzalgorithmen verglichen. Im Anschluss daran wird die Realisierung des Algorithmus als Java-Framework im Rahmen einer Architekturbeschreibung diskutiert. Anpassungen an zukünftige Entwicklungen der UML, Weiterentwicklungen des Frameworks und Beispieldiagramme, die von der Implementierung generiert wurden, runden die Arbeit ab. KW - URL KW - Klassendiagramm KW - automatisches Layout KW - UML Klassendiagramm KW - semantische Ästhetik KW - Zeichnen von Graphen KW - computergestützte Softwaretechnik KW - automatic Layout KW - UML class diagram KW - semantical aesthetic KW - graph drawing KW - CASE Y1 - 2005 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-14831 ER -