Title: Paradigms for Graph Drawing
1Paradigms for Graph Drawing
Graph Drawing Algorithms for the Visualization
of Graphs - Chapter 2
Presented by Liana Diesendruck
2Graph Drawing Methods Parameters
- Input graph G E(G) and V(G)?
- Additional input class of G - like planar,
directed acyclic, tree, etc. - Specific algorithms work better for specific type
of graphs - Highlight a particular graph characteristic
3Graph Drawing Methods Concepts
- Drawing convention ???? (basic rule that the
drawing must satisfy to be admissible)? - Aesthetics - ???????
- Constraints - ???????
4Graph Drawing Methods Concepts
- Drawing conventions
- Polyline drawing
- Straight-line drawing
- Orthogonal drawing
- Grid drawing
- Planar drawing
- Upward drawing
5Graph Drawing Methods Concepts
- Polyline drawing each edge is drawn as a
polygonal chain - Can approximate drawings with curved edges
6Graph Drawing Methods Concepts
- Straight-line drawing each line is drawn as a
straight line - Particular case of polyline drawing
7Graph Drawing Methods Concepts
- Orthogonal drawing each edge is drawn as a
polygonal chain of alternating horizontal and
vertical segments - Particular case of polyline drawing
8Graph Drawing Methods Concepts
- Grid drawing vertices, crossings, and edge bends
have integer coordinates
9Graph Drawing Methods Concepts
- Planar Drawing no edge crossings
10Graph Drawing Methods Concepts
- Upward Drawing each edge is drawn as a curve
monotonically nondecreasing in the vertical
direction. - Directed Acyclic Graphs
- Strictly upward
11Graph Drawing Methods Concepts
- Aesthetics specify graphic properties we would
want to apply as much as possible to achieve
readability. - Crossings
- Area
- Total / Maximum / Uniform Edge Length
- Total / Maximum / Uniform Bends
- Angular resolution
- Aspect Ratio
- Symmetry
12Graph Drawing Methods Concepts
- Crossings minimization of the total number of
crossings. - Ideally we would have planar graphs (not always
possible).
13Graph Drawing Methods Concepts
- Area minimization of the area of the drawing.
- Important to save screen space
- Relevant just when we cannot arbitrarily scale
the graph down
14Graph Drawing Methods Concepts
- Total Edge Length minimization of the sum of the
lengths of the edges. - Maximum Edge Length minimization of the maximum
length of an edge. - Both relevant just when we cannot arbitrarily
scale the graph down. - Uniform Edge Length minimization of the variance
of the lengths of the edges.
15Graph Drawing Methods Concepts
- Total Bends minimization of the total number of
bends along the edges. - Important for orthogonal drawings
- Trivially satisfied by straight-line drawings
- Maximum Bends minimization of the maximum number
of bends on an edge. - Uniform Bends minimization of variance of the
number of bends on an edge.
16Graph Drawing Methods Concepts
- Angular resolution Maximization of the smallest
angle between two edges incident on the same
vertex.
17Graph Drawing Methods Concepts
- Aspect Ratio minimization of the aspect ratio of
the drawing
L2
A.R. L2/L1
L1
18Graph Drawing Methods Concepts
- Symmetrydisplay the symmetries of the graph in
the drawing
19Graph Drawing Methods Concepts
- Most aesthetics are associated with optimization
problems most of them computationally hard. - Approximation strategies and heuristics for
real-time response.
20Graph Drawing Methods Concepts
- Constraints refer to specific subgraphs and
subdrawings. Commonly used in visualization
applications. Usually include - Center place a given vertex close to the center
of the drawing - External place a given vertex on the outer
boundary of the drawing - Cluster place a subset of vertices close
together - Left-right sequence draw a given path
horizontally aligned from the left to the right - Shape draw a given subgraph with a predefined
shape
21Precedence Among Aesthetics
- Most drawing techniques are based in the
following two observations - Aesthetics often conflict with each other
- Even if they don't, it is often difficult to deal
with all of them at the same time
22(No Transcript)
23Precedence Among Aesthetics
- Graph drawing methodologies established a
precedence among aesthetics. - Such precedence is more suitable for certain
applications than for others. - The common approaches to graph drawings usually
divide the process into a sequence of steps. - Each step is targeted to satisfy a certain
subclass of aesthetics.
24Topology-Shape-Metrics Approach
- Suited for orthogonal grid drawings
- Topology two orthogonal drawings have the same
topology if one can be obtained from the other by
deformation that doesn't alter the sequence of
edges contouring the faces of the drawing
25Topology-Shape-Metrics Approach
- Shape two orthogonal drawings have the same
shape if one can be obtained from the other by
modifying the lengths of the segments of the
edges without changing their angles - Metrics two orthogonal drawings have the same
metrics if they are congruent, up to a
translation and/or rotation
26Topology-Shape-Metrics Approach
- The approach has 3 steps
- Planarization
- Orthogonalization
- Compaction
27Topology-Shape-Metrics Approach
- Planarization (determines the topology)?
- Try to reduce the number of edge crossings as
much as possible - Possible algorithm
- Extract the maximal planar subgraph of the given
graph - Insert the non-planar edges one by one,
minimizing the number of crossings caused at each
insertion - Represent each crossing by a dummy vertex, so the
final topology is planar
28Topology-Shape-Metrics Approach
- Orthogonalization (determines the shape)?
- Outputs the orthogonal representation of the
graph. - Each edge (u, v) is equipped with a list of
angles, that describes the bends that the
orthogonal line representing (u, v) will have in
the final drawing
29Topology-Shape-Metrics Approach
- Compaction (determines the metrics)?
- Determines the final coordinates of the vertices
and of the edge bends - Try to minimize the drawing area
- Dummy vertices are removed
- Constraints
- Topological edge crossings, fix a vertex in the
external face of the drawing, etc. - Shape require that a given path doesn't have
bends - Metrics constrain the relation between vertices
coordinates
30(No Transcript)
31Hierarchical Approach
- Suited for directed graphs, particularly for
acyclic directed graphs with the polyline
downward drawing convention. - Steps
- Layer assignment
- Crossing reduction
- X-coordinate assignment
32Hierarchical Approach
- Layer assignment
- Produce a layered directed graph with layers
- If (u, v) is an edge where and
, then i gt j - Produce a proper layered directed graph
- If (u, v) is an edge where and
, then i j1 - Do it by inserting dummy vertices along edges
that span more than two layers - Assign yi to every vertex in
33Hierarchical Approach
- Crossing reduction
- Receive the proper layered graph
- Order the vertices on each layer, so to minimize
the amount of edge crossings - X-coordinate assignment
- Preserve the order received on each layer
- Assign x-coordinates to every vertex
- Represent each edge by a straight line
- Remove dummy vertices
34(No Transcript)
35Hierarchical Approach
- Can also be used in graphs that are not acyclic
- Cannot preserve the downward convention, but can
minimize the amount of upward edges - First, force the graph to be acyclic by reversing
a subset of edges (as small as possible)? - Then apply the hierarchical approach
- Finally, restore the original direction of the
reversed edges
36(No Transcript)
37Visibility Approach
- Suited for drawing graphs with the polyline
drawing convention - Steps
- Planarization (as in the topology-shape-metrics
approach)? - Visibility
- Replacement
38Visibility Approach
- Visibility
- Construct a visibility representation of the
graph - Map each vertex to a horizontal segment
- Map each edge to a vertical segment
- s.t., the vertical segment (u,v) has endpoints on
the horizontal segments representing u and v and
does not intersect with any other horizontal
segment
39Visibility Approach
- Replacement
- Construct the final polyline
- Replace each horizontal segment by a point
- Replace each vertical segment by a polygonal
line, following the original vertical assignment
40(No Transcript)
41Visibility Approach
- Planarization step as in the topology-shape-metric
s approach - Visibility step similar to layer assignment in
the hierarchical approach - So, it can be considered as a meeting point of
the topology-shape-metrics and the hierarchical
approaches - Aesthetic considerations and general constraints
can be added to suitable steps
42Augmentation Approach
- Also suited for the polyline drawing convention
- Basic idea add edges and/or vertices to the
graph to obtain a new graph with a stronger
structure and better drawability properties - Steps
- Planarization (as in the topology-shape-metrics
approach)? - Augmentation
- Triangulation drawing
43Augmentation Approach
- Augmentation
- Add a set of edges (sometimes also vertices) to
the planar embedding - s.t. a maximal planar graph is obtained (planar
graph whose faces have three edges)? - Try to keep the degrees of the vertices as small
as possible
44Augmentation Approach
- Triangulation drawing
- Represent each face as a triangle
- Remove dummy edges and vertices
- Can use strategies to minimize the graph area,
maximize angular resolution and uniform
distribution of vertices
45(No Transcript)
46Augmentation Approach
- If the graph is planar, then the result drawing
is straight-line. Otherwise, the dummy vertices
become bends. - This approach is less suitable than others for
supporting constraints.
47Force-directed Approach
- Good for creating straight-line drawings of
undirected graphs - Popular mostly because it is easy to understand
and code - Simulates a system of forces over the input graph
and outputs a locally minimum energy
configuration - Two ingredients
- Force model
- Locally minimum configuration finding technique
48Force-directed Approach
- Example of a force model
- Each pair (u,v) is assigned with a spring with
length luv that is the number of edges on the
shortest path between u and v. The spring follows
Hooke's law. - Locally minimum configuration finding technique
- Usually by numerical analysis (simple iterative
methods)? - Tends to give highly symmetric drawings and
distribute vertices evenly - Constrains can be added by special forces
49Divide and Conquer Approach
- Suited for graphs that can be easily decomposed
into subgraphs, such as trees. - Main idea
- split the graph into subgraphs
- recursively draw the subgraphs
- the drawing of the whole graph is obtained by
gluing the drawings of the subgraphs.
50Divide and Conquer Approach
- Example algorithm for drawing binary trees in 2
main steps - Layer assignment (as in the hierarchical
approach), trying to minimize the distance from
the root - Divide and Conquer
- If the tree is a single vertex, then trivially
construct its drawing on the assigned layer. If
the tree is empty, do nothing. - Else, (divide) recursively divide the left and
right subtrees and (conquer) place the two
subdrawings obtained close to one another with
the root positioned halfway between the roots of
the subtrees.
51General Framework for Graph Drawing
- Let C be a class of graphs and let C' be a
subclass of C. If an algorithm can be applied tp
the graphs of C, it can also be applied to the
graphs of C'. That is, C' inherits the algorithms
for C. - Graph drawing methodology is composed of a series
of relatively independent functional steps. Where
the inputs and outputs are always graphs.
52General Framework for Graph Drawing
- Inheritance hierarchy of classes of graphs
- Set of methods with the following
characteristics - Each method is associated with a class of graphs
and maps a graph of that class into a graph of
another class - A method associated with a class of graphs C is
also associated with all the descendant classes
of C in the hierarchy.
53General Framework for Graph Drawing
- The most general class in the hierarchy is Graph
- According to certain properties, the subclasses
of Graph are - Connected Graphs
- Planar Graphs
- Directed Graphs
- Drawing
54(No Transcript)
55(No Transcript)
56Summary
- Drawing conventions
- Aesthetics
- Constraints
- Precedence among aesthetics
- 6 different approaches to graph drawing
- Hierarchy and inheritance