Download - Monotone Drawings of Graphs
1
Monotone Drawings of Graphs
Thanks to Peter Eades
www.dia.uniroma3.it/~compunet
Patrizio Angelini, Enrico Colasante,
Giuseppe Di Battista, Fabrizio Frati, and Maurizio Patrignani
Roma Tre University, Italy
2
Konstanz Univ.
Bellavista Hotel
direction of monotonicity
3
Konstanz Univ.
Petershof hotel
no direction of monotonicity
4
monotone paths• monotone path with respect to a half-line l
– each segment of the path has a positive projection onto l• monotone path
– there exists an l such that the path is monotone with respect to
l
lp1
p2
5
monotone drawings of graphs• monotone (straight-line) drawing of a
graph G– each pair of vertices of G are joined by a
monotone path• monotonicity does not imply planarity
l
6
overview of the talk
• properties of monotone drawings
• monotone drawings of trees
• monotone drawings of graphs
• planar monotone drawings of biconnected graphs
• conclusions and open problems
7
properties of monotone drawings• each pair of adjacent
edges forms a monotone path
• any subpath of a monotone path is monotone
• affine transformations preserve monotonicity
• each monotone path is planar– a monotone drawing
of a tree is planar
notmonotone
8
convex drawings of trees• a convex drawing of a tree is such that replacing
edges leading to leaves with half-lines yields a partition of the plane into convex unbounded regions [Carlson, Eppstein, GD’06]
9
strictly convex drawings of trees• a strictly convex drawing of a tree T is such that:
– it is a convex drawing of T– each set of parallel edges of T forms a collinear path
• every strictly convex drawing of a tree is monotone
10
slope-disjoint drawing of trees• slope-disjoint drawing of a tree T
– each subtree rooted at vertex v uses an interval of slopes (v, v) where v – v <
– if u is the parent of v you have v < u < s(u,v) < u < v
– if v and w are siblings (v, v) (w, w) = v
u
v
u
v
w
11
slope-disjoint drawing of trees• any slope-disjoint drawing of a tree is
monotone• we propose two algorithms:
– BFS-based algorithm• constructs a monotone drawing of a tree on a grid of area
O(n1.6) O(n1.6) – DFS-based algorithm
• constructs a monotone drawing of a tree on a grid of area O(n2) O(n)
12
monotone drawings of graphs
• any graph admits a monotone drawing– consider a spanning tree T of the input graph– produce a monotone drawing of T– add the remaining edges
• the produced drawings may have crossings even if the input graph is planar
is it possible to have planar monotone drawings of planar graphs?
13
biconnected graphs• a cut-vertex is a vertex such
that its removal produces a disconnected graph
• a biconnected graph does not have cut-vertices
• a separation pair of a biconnected graph is a pair of vertices whose removal produces a disconnected graph
• a split pair is either a separation pair or a pair of adjacent vertices
14
SPQR-tree
u
v
15
SPQR-tree
Q
u
v
16
SPQR-tree
Q
u
v
17
SPQR-tree
Q
Su
v
18
SPQR-tree
Q
S
Q
u
v
19
SPQR-tree
Q
S
Q P
20
SPQR-tree
Q
Q
Q
Q Q
S
P
S
21
SPQR-tree
Q
Q
Q
Q Q
S
P
Q Q Q Q Q
R
S
22
SPQR-tree
Q
Q
Q
Q Q
S
P
Q Q Q Q Q
R
S
• each internal node of the tree is associated with a skeleton representing its configuration
• the graph represented by node into its parent is called the pertinent of
u
v
u
v
skeleton of S
23
convex drawings are monotone• graphs admitting strictly convex drawings
[Chiba, Nishizeki, 88]– are biconnected – have an embedding such that each split pair u,v
• is incident to the outer face• all its maximal split components, with the possible exception
of edge (u,v), have at least one edge on the outer face
• any strictly convex drawing of a graph is monotone [Arkin, Connelly, Mitchell, SoCG ‘89]
• with similar techniques we show that– any non-strictly convex drawing of a graph such that
each set of parallel edges forms a collinear path is monotone
24
strategy for biconnected graphs• we apply an inductive algorithm
to the nodes of the SPQR-tree• a node of the tree is
associated with a quadrilateral shape called boomerang of and denoted by boom()
• the pertinent of uses a “restricted” range of slopes
• the boomerangs of the children of are arranged into boom()
N
S
EW
25
strategy for biconnected graphs
• invariants on boom()– symmetric with respect to
the line through W and E
– angle + 2 < /2
N
S
EW
26
properties of the drawings• the inductive algorithm
constructs a drawing of pert() such that is monotone– is contained into boom()
• with the possible exception of the edge joining the poles of
– any vertex w of pert() belongs to a path that is a composition of
• a path toward N which is monotone with respect to dN and uses slopes in (dN-, dN+)
• a path toward S monotone w.r.t. dS and using slopes in (dS-, dS+)
N
E
S
W
dS
dN
27
base case: Q-node
• if is a Q-node draw the corresponding edge as a segment from N to S
N
S
EW
28
if is an S-node
• find the intersection between the two bisectors of angles
• arrange the boomerangs of the children as in the figure
• recur on the children using ’ + 2’ < /2
N
E
S
W
29
if is a P-node
• split boom() into a suitable number of slices
• compute and for each slice
• recur on the children
N
E
S
W
30
if is an R-node• remove the south pole and obtain
graph G’• observe that G’ admits a convex
drawing into any convex polygon• draw G’ into a suitable convex
polygon in the upper portion of boom()
• squeeze the drawing towards the N-E border of boom() in order to make sure that the drawing uses a restricted interval of slopes
• compute and for each child• recur on the children
N
E
S
W
31
admitting planar and monotone drawings
admitting strictly convex drawings
planarbiconnected
planartriconnectedtrees
planar simply connected
?
?
??
?
?
32
conclusions and open problems• address simply connected graphs• determine tight bounds on the area
requirements for grid drawings of trees• devise algorithms to construct monotone
drawings of non-planar graphs on a grid of polynomial size
• construct monotone drawings of biconnected graphs in polynomial area
• explore strongly monotone drawings, where each pair of vertices u,v has a joining path that is monotone with respect to the line from u to v
33
change my embedding if you want me monotone
34
thank you
thank you