DRAWING NON-PLANAR GRAPHS WITH CROSSING-FREE SUBGRAPHS* Patrizio Angelini 1 , Carla Binucci 2 , Giordano Da Lozzo 1 , Walter Didimo 2 , Luca Grilli 2 , Fabrizio Montecchiani 2 , Maurizio Patrignani 1 , and Ioannis G. Tollis 3
Graph Drawing 2013 - Bordeaux, France *
Work on these results began at the 8th Bertinoro Workshop on Graph Drawing
THE PROBLEM Instance: a pair such that • G is a non-planar graph • S is a planar spanning subgraph of G Question: does there exist a straight-line drawing of G in which the edges of S not involved in any crossing?
2S
= < K3,3 , hamiltonian path >
2G\S
2
BAD CROSSINGS
L
L 3
GOOD CROSSINGS
J
4
MOTIVATIONS • different groups of edges may have different semantics/importance • a visual interface might attempt to display more important edges in a planar way • try to maintain the overview of the whole graph
Q
Routing Tree for node Q
5
TWO SETTINGS Straight-line setting 1. edges of S and of G\S are straight-line segments
Polyline setting 1. edges of S are straightline segments 2. edges of G\S have at most k-bends
straight-line compatible drawings
k-bend compatible drawings
6
RESULTS: STRAIGHT-LINE SETTING Always positive instances 1. spiders
2. caterpillars
3. BFS-trees •
every graph admits such planar spanning subgraphs
7
RESULTS: STRAIGHT-LINE SETTING Negative instances •
even if S is a binary tree
Efficient testing and drawing algorithm • when S is triconnected
8
STRAIGHT-LINE: SPIDERS v11
2S
u
v31
u 2
v1
v2
2G\S
n
v12
v3 v3
v12
v1
v31
v2
v11 (n
2)2
9
STRAIGHT-LINE: CATERPILLARS
Augmentation of G and S with dummy vertices and edges u1
v11 v12
u2
s1 v11 v12 v13 t1 s2 v21 t2
u3
u2
u1
v21
v31
u3
u4
s3 v31
t 3 s4
v13
Order L • suitable traversal of the augmented version of S started at u1 L = {u1,s1,v11,v12,v13,t1,u2,s2,v21,t2,u3,s3,v31,t3,u4,s4}
10
STRAIGHT-LINE: CATERPILLARS u1
CONSTRUCTION:
u3
u4
s1 v11 v12 v13 t1 s2 v21 t2 s3 v31 t3 s4 u4 s4 t 3 v s3 31 u3 t2 v21 s2 u2 t1
• consider a quarter of circumference C • split C in |L|-1 equally spaced sectors • each vertex is suitably drawn along the rays delimiting each sector
u2
v13 v12 v11 s1 u1
o
11
STRAIGHT-LINE: CATERPILLARS u1
CONSTRUCTION:
u2
u3
u4
s1 v11 v12 v13 t1 s2 v21 t2 s3 v31 t3 s4 u4 s4 v31 t3 s3 u3 t2 v21 s2 u2 t1
• vertices of the spine
v13 v12 v11 s1 u1
o
12
STRAIGHT-LINE: CATERPILLARS u1
CONSTRUCTION:
s1 v11 v12 v13 t1
• leaf vertices are drawn on a convex curve
u2
s2
t1 v13 v12
v11 s1 u1
13
STRAIGHT-LINE: CATERPILLARS u1
u2
u3
u4
s1 v11 v12 v13 t1 s2 v21 t2 s3 v31 t3 s4 u4 s4 t 1. S is drawn planar 3 v s3 31 u3 2. edges between leaves inside P t2 3. edges between spine and leaf v21 vertices do not cross S s2 u2 P t1 S is crossing free:
Nice property:
dmin/dmax=
Ω(n-1)
v13 v12 v11 s1 u1
o
14
RESULTS: NEGATIVE INSTANCES 1. G = K13 and S is the complete rooted ternary tree
2. G = K22 and S is the complete unrooted binary tree
15
RESULTS: NEGATIVE INSTANCES r r v
u
Case 1
u
w
w
v u
2S
2G\S
Case 2 v
r w 16
RESULTS: NEGATIVE INSTANCES r r w
v
u
Case 1.1
u u1
u1
w
v Case 1 r
r
u v
w
Case 1.2
u u1
v
w 17
RESULTS: NEGATIVE INSTANCES r u u1 u2
r v
u
w
w
v
u1 u2 u3
r
Case 1.1 r v
u u1
u u3
w u1
u2 18
RESULTS: BFS-TREES L0
KEY PROPERTY: edges of G\S connect vertices belonging to the same level or to consecutive levels • construction similar to the caterpillar case
L1 L2
J
L
BFS-trees can be constructed in linear time
the drawing may require Ω(2n)-area 19
STRAIGHT-LINE: TRICONNECTED GRAPHS Necessary and sufficient conditions: 1. each edge e of G\S connects vertices belonging to the same face of S 2. there exists a face f of S containing 3 vertices that do not separate the endpoints of any edge of G\S
v1
v1
f
f v3 v2
v3
v2 20
STRAIGHT-LINE: TRICONNECTED GRAPHS q Testing Condition 2:
Gf f
Auxiliary labelled biconnected outerplane graph Gf for each face f of S § EMPTY faces of Gf contain vertices satisfying Cond 2 § FULL faces of Gf do not e2
e1
e3
21
STRAIGHT-LINE: TRICONNECTED GRAPHS q Testing Condition 2:
Gf e
F CASE 1: edge e splits a single EMPTY face F of Gf UPDATE: replace F with 2 EMPTY faces F’ and F’’ F0 F 00
22
STRAIGHT-LINE: TRICONNECTED GRAPHS q Testing Condition 2:
Gf e
CASE 2: edge e crosses a set of inner edges of Gf UPDATE: form a new FULL face Fx (and remove the previous EMPTY and FULL faces traversed) G = (V,E)
F
S=(V,W)
COND2: O(|E\W|×|V|)-time
23
RESULTS: POLYLINE SETTING q grid K-bend compatible drawings of Trees • 1-bend • 3-bend • RAC 4-bend right angle crossings
24
POLYLINE: 3-BEND TREES hG, Si
• augment S to an embedded biconnected planar graph S* • dummy vertices belong to the same face F*
S0
S⇤
vL
F⇤
vR
25
POLYLINE: 3-BEND TREES • straight-line grid drawing of S* [Kant’96] • the leaf vertices of S* have the same y-coordinate Y • bend points for the edges of G\S have either y-coordinate Y or Y-1 r
n+m F⇤
vL n+m
vR
Y
Y
1
26
OPEN PROBLEMS FOR FUTURE WORK q STRAIGHT-LINE SETTING • What is the complexity of the problem when S is not a spanning triconnected graph? • Give a characterization of which spanning trees of a complete graph can be always realized.
q POLYLINE SETTING • What is the optimal area requirement for grid k-bend compatible drawings when S is a spanning trees? 27
THANK YOU!