Graph drawing

From Wikipedia, the free encyclopedia

Jump to: navigation, search

Graph drawing, as a branch of graph theory, applies topology and geometry to derive two-dimensional representations of graphs. Graph drawing is motivated by applications such as VLSI circuit design, social network analysis, cartography, and bioinformatics.

A drawing of a graph is basically a pictorial representation of an embedding of the graph in the plane, usually aimed at a convenient visualization of certain properties of the graph in question or of the object modeled by the graph.

Contents

[edit] Overview

Graphs are usually represented pictorially using dots to represent vertices, and arcs to represent the edges between connected vertices. Arrows can be used to show the orientation of directed edges. Note that this graphical representation (a graph layout or an embedding) should not be confused with the graph itself (the abstract, non-graphical structure). Very different layouts can correspond to the same graph. In the abstract, all that matters is which vertices are connected to which others by how many edges. In the concrete, however, the arrangement of these vertices and edges impacts understandability, usability, fabrication cost, and aesthetics.

Based on these concepts and caveats, there are different graph layout strategies, such as:

  • force-based layout: gradient descent minimization of an energy function based on physical metaphors related to molecular mechanics.
  • spectral layout: layout using as coordinates the eigenvectors of a matrix such as the Laplacian derived from the adjacency matrix of the graph.
  • orthogonal layout: layout with edges running horizontally or vertically, with approaches that reduce the number of edge crossovers and area covered. These are of great interest in the areas of VLSI and PCB layout design
  • symmetric layout: these attempt to find symmetry groups within the graph
  • tree layout: these show a rooted tree-like formation, suitable for trees (i.e., graphs without cycles)
  • hierarchical layouts: these attempt to find a source and sink within a directed graph and arrange the nodes in layers with most edges starting from the source and flowing in the direction of the sink

In some applications of graph drawing it is important to formally specify, implement, and verify such procedures.

[edit] Metrics

K4 (the complete graph with 4 vertices) can be drawn with or without overlapping edges (move one of the corners inside the triangle formed by the other three corners)

There is no "best" layout of the drawing of a graph — different ways of displaying a graph emphasize different characteristics.

One measure of a graph drawing algorithm's quality is the number of edge crossings it draws. While some graphs cannot be drawn without edge crossings, some graphs can. These are called planar graphs. According to this metric, "good" algorithms draw graphs with as few edge crossings as possible.

Another possible measure is the closeness of vertices. Many graphs look better if non-adjacent vertices are not plotted close to each other. A further measure is the nearness of a vertex to a non-adjacent edge, this distance needs to be sufficiently big for an aesthetically pleasing appearance.

[edit] Type of graph drawing

[edit] See also

[edit] References

  • Battista, Giuseppe Di; Eades, Peter; Tamassia, Roberto; Tollis, Ioannis G. (1998), Graph Drawing: Algorithms for the Visualization of Graphs, Prentice Hall, ISBN 9780133016154 .
  • Jünger, Michael; Mutzel, Petra (2004), Graph Drawing Software, Springer-Verlag, ISBN 9783540008811 .

[edit] External links

Personal tools