Rook-drawing for plane graphs Claire Pennarun David Auber, Nicolas - - PowerPoint PPT Presentation

rook drawing for plane graphs
SMART_READER_LITE
LIVE PREVIEW

Rook-drawing for plane graphs Claire Pennarun David Auber, Nicolas - - PowerPoint PPT Presentation

Rook-drawing for plane graphs Claire Pennarun David Auber, Nicolas Bonichon and Paul Dorbec LaBRI, Bordeaux Graph Drawing September 25 th , 2015 Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 1 / 15 Maybe you know


slide-1
SLIDE 1

Rook-drawing for plane graphs

Claire Pennarun

David Auber, Nicolas Bonichon and Paul Dorbec

LaBRI, Bordeaux

Graph Drawing September 25th, 2015

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 1 / 15

slide-2
SLIDE 2

Maybe you know them?

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 2 / 15

slide-3
SLIDE 3

Drawing graphs

We want to draw large graphs with hierarchical view: a vertex in the drawing = a group of vertices in the graph

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 3 / 15

slide-4
SLIDE 4

Drawing graphs

We want to draw large graphs with hierarchical view: a vertex in the drawing = a group of vertices in the graph preserve the relative positions of vertices → mental map

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 3 / 15

slide-5
SLIDE 5

Drawing graphs

We want to draw large graphs with hierarchical view: a vertex in the drawing = a group of vertices in the graph preserve the relative positions of vertices → mental map low complexity of algorithms (linear, if possible)

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 3 / 15

slide-6
SLIDE 6

Drawing graphs

We want to draw large graphs with hierarchical view: a vertex in the drawing = a group of vertices in the graph preserve the relative positions of vertices → mental map low complexity of algorithms (linear, if possible) → new type of drawing with constraints: rook-drawing

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 3 / 15

slide-7
SLIDE 7

Rook-drawing

A rook-drawing of a graph of n vertices: Straight-line edges Regular grid (n columns and rows) Exactly one vertex per row and column

n n n n n n n n n n n n n n n n n n n n n n n n

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 4 / 15

slide-8
SLIDE 8

Rook-drawing

A rook-drawing of a graph of n vertices: Straight-line edges Regular grid (n columns and rows) Exactly one vertex per row and column

n n n n n n n n

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 4 / 15

slide-9
SLIDE 9

Rook-drawing

A rook-drawing of a graph of n vertices: Straight-line edges Regular grid (n columns and rows) Exactly one vertex per row and column

n n n n n n n n n n n n n n n n : : : :

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 4 / 15

slide-10
SLIDE 10

Rook-drawing

A rook-drawing of a graph of n vertices: Straight-line edges Regular grid (n columns and rows) Exactly one vertex per row and column

n n n n n n n n n n n n n n n n : : : : n n n n n n n n : : : :

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 4 / 15

slide-11
SLIDE 11

Planar rook-drawing

Is there a planar rook-drawing for every plane graph?

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 5 / 15

slide-12
SLIDE 12

Planar rook-drawing

Is there a planar rook-drawing for every plane graph? A plane graph = a planar graph + an embedding in the plane

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 5 / 15

slide-13
SLIDE 13

Planar rook-drawing

Is there a planar rook-drawing for every plane graph? A plane graph = a planar graph + an embedding in the plane What we already know: Straight-lines drawing ([F´ ary, 1948] : every planar graph) Grid drawing ([de Fraysseix, 1988], [Schnyder, 1990] : every plane graph on an (n − 2) × (n − 2) grid)

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 5 / 15

slide-14
SLIDE 14

Outer face of degree 3

n n n

a b c

Three exterior vertices a, b and c, n vertices (here n = 6).

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 6 / 15

slide-15
SLIDE 15

Outer face of degree 3

n n n

a b c

Three exterior vertices a, b and c, n vertices (here n = 6). We must place interior vertices on the red row and column

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 6 / 15

slide-16
SLIDE 16

Outer face of degree 3

n n n

a b c α β M

Three exterior vertices a, b and c, n vertices (here n = 6). We must place interior vertices on the red row and column α ≥ 45◦, β ≥ 45◦ + Mbc right-angled

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 6 / 15

slide-17
SLIDE 17

Outer face of degree 3

n n n

a b c α β

Three exterior vertices a, b and c, n vertices (here n = 6). We must place interior vertices on the red row and column α ≥ 45◦, β ≥ 45◦ + Mbc right-angled α = β = 45◦

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 6 / 15

slide-18
SLIDE 18

Outer face of degree 3

n n n

a b c

Three exterior vertices a, b and c, n vertices (here n = 6). We must place interior vertices on the red row and column α ≥ 45◦, β ≥ 45◦ + Mbc right-angled α = β = 45◦ Fill these row and column with c and b!

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 6 / 15

slide-19
SLIDE 19

Outer face of degree 3

n n n n n n

a b c

Three exterior vertices a, b and c, n vertices (here n = 6). We must place interior vertices on the red row and column α ≥ 45◦, β ≥ 45◦ + Mbc right-angled α = β = 45◦ Fill these row and column with c and b! Inner nodes: along a diagonal

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 6 / 15

slide-20
SLIDE 20

Outer face of degree 3

n n n n n n

a b c

Three exterior vertices a, b and c, n vertices (here n = 6). We must place interior vertices on the red row and column α ≥ 45◦, β ≥ 45◦ + Mbc right-angled α = β = 45◦ Fill these row and column with c and b! Inner nodes: along a diagonal Graph with a degree 3 outer face with planar rook-drawing = subgraph of the tower graph

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 6 / 15

slide-21
SLIDE 21

Rook-drawing for outerplanar graphs

A graph is outerplanar if it has a planar drawing such that all its vertices are on the outer face.

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 7 / 15

slide-22
SLIDE 22

Rook-drawing for outerplanar graphs

A graph is outerplanar if it has a planar drawing such that all its vertices are on the outer face.

n n n n n n n n n n n n n n n n

[Bonichon, Gavoille, Hanusse, 2005]

edges of G maximal rooted outerplane graph → Tb, Tr

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 7 / 15

slide-23
SLIDE 23

Rook-drawing for outerplanar graphs

A graph is outerplanar if it has a planar drawing such that all its vertices are on the outer face.

n n n n n n n n n n n n n n n n

[Bonichon, Gavoille, Hanusse, 2005]

edges of G maximal rooted outerplane graph → Tb, Tr

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 7 / 15

slide-24
SLIDE 24

Rook-drawing for outerplanar graphs

Only look to Tb:

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-25
SLIDE 25

Rook-drawing for outerplanar graphs

Only look to Tb:

1

x: ccw pre-order depth-first y: ccw post-order depth-first

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-26
SLIDE 26

Rook-drawing for outerplanar graphs

Only look to Tb:

1 2

x: ccw pre-order depth-first y: ccw post-order depth-first

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-27
SLIDE 27

Rook-drawing for outerplanar graphs

Only look to Tb:

1 2 3

x: ccw pre-order depth-first y: ccw post-order depth-first

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-28
SLIDE 28

Rook-drawing for outerplanar graphs

Only look to Tb:

1 2 3 9 13 10 8 4 14 12 11 7 16 15 6 5

x: ccw pre-order depth-first y: ccw post-order depth-first

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-29
SLIDE 29

Rook-drawing for outerplanar graphs

Only look to Tb:

1 3 9 13 10 8 4 14 12 11 7 16 15 6 5 2 1

x: ccw pre-order depth-first y: ccw post-order depth-first

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-30
SLIDE 30

Rook-drawing for outerplanar graphs

Only look to Tb:

1 3 9 13 10 8 4 14 12 11 7 16 15 6 2 1 5 2

x: ccw pre-order depth-first y: ccw post-order depth-first

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-31
SLIDE 31

Rook-drawing for outerplanar graphs

Only look to Tb:

1 3 9 13 10 8 4 14 12 11 7 16 15 2 1 5 2 6 3

x: ccw pre-order depth-first y: ccw post-order depth-first

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-32
SLIDE 32

Rook-drawing for outerplanar graphs

Only look to Tb:

2 1 5 2 6 3 1 16 9 15 3 7 13 14 10 10 8 6 4 5 14 13 12 9 11 8 7 4 16 12 15 11

x: ccw pre-order depth-first y: ccw post-order depth-first

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-33
SLIDE 33

Rook-drawing for outerplanar graphs

Only look to Tb:

(1,16) (9,15) (3,7) (2,1) (13,14) (10,10) (8,6) (4,5) (14,13) (12,9) (11,8) (7,4) (6,3) (5,2) (16,12) (15,11)

x: ccw pre-order depth-first y: ccw post-order depth-first

n n n n n n n n n n n n n n n n

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-34
SLIDE 34

Rook-drawing for outerplanar graphs

Only look to Tb:

(1,16) (9,15) (3,7) (2,1) (13,14) (10,10) (8,6) (4,5) (14,13) (12,9) (11,8) (7,4) (6,3) (5,2) (16,12) (15,11)

x: ccw pre-order depth-first y: ccw post-order depth-first

n n n n n n n n n n n n n n n n

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 8 / 15

slide-35
SLIDE 35

Rook-drawing for outerplanar graphs

n n n n n n n n n n n n n n n n

Hyp: G[Tv] of depth k admits a planar rook-drawing in the grid [x(v), x(v) + |Tv| − 1] × [y(v) − |Tv| + 1, y(v)].

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 9 / 15

slide-36
SLIDE 36

Rook-drawing for outerplanar graphs

n n n n n n n n n n n n n n n n

Hyp: G[Tv] of depth k admits a planar rook-drawing in the grid [x(v), x(v) + |Tv| − 1] × [y(v) − |Tv| + 1, y(v)]. By induction on depth: Children subtrees: in distinct areas and well drawn.

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 9 / 15

slide-37
SLIDE 37

Rook-drawing for outerplanar graphs

n n n n n n n n n n n n n n n n

Hyp: G[Tv] of depth k admits a planar rook-drawing in the grid [x(v), x(v) + |Tv| − 1] × [y(v) − |Tv| + 1, y(v)]. By induction on depth: Children subtrees: in distinct areas and well drawn. Edges from v to its children: no crossings!

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 9 / 15

slide-38
SLIDE 38

Rook-drawing for outerplanar graphs

n n n n n n n n n n n n n n n n

Hyp: G[Tv] of depth k admits a planar rook-drawing in the grid [x(v), x(v) + |Tv| − 1] × [y(v) − |Tv| + 1, y(v)]. By induction on depth: Children subtrees: in distinct areas and well drawn. Edges from v to its children: no crossings! Red edges: between u and the first vertex below u unrelated to it. → between vi+1 and vertices on the left

  • f the subtree of vi: no crossings!

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 9 / 15

slide-39
SLIDE 39

Polyline rook-drawing for planar graphs

Main result

Every planar graph with n vertices admits a planar polyline rook-drawing, with at most n − 3 bends (at most one per edge). Such a drawing can be computed in linear time. G a triangulation (else, make it triangulated) with exterior vertices v0, v1 and v2

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 10 / 15

slide-40
SLIDE 40

Schnyder woods

A Schnyder wood is a partition of the internal edges of a triangulation in three trees T0, T1 and T2 (directed toward the root) and with a particular configuration around each inner vertex:

P2(u) P0(u) P1(u) u 2 1 2 1

v0 v1 v2 A B C D E F G H I

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 11 / 15

slide-41
SLIDE 41

Schnyder woods

A Schnyder wood is a partition of the internal edges of a triangulation in three trees T0, T1 and T2 (directed toward the root) and with a particular configuration around each inner vertex:

P2(u) P0(u) P1(u) u 2 1 2 1

v0 v1 v2 A B C D E F G H I

[Schnyder 1989]

Every plane triangulation admits at least one Schnyder wood, and it can be computed in linear time.

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 11 / 15

slide-42
SLIDE 42

Planar polyline rook-drawing - Vertices

(T0, T1, T2): Schnyder wood of G.

v0 v1 v2 A B C D E F G H I

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 12 / 15

slide-43
SLIDE 43

Planar polyline rook-drawing - Vertices

(T0, T1, T2): Schnyder wood of G. (v1v0), (v2v0), (v2v1)

v0 v1 v2

A B C D E F G H I

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 12 / 15

slide-44
SLIDE 44

Planar polyline rook-drawing - Vertices

(T0, T1, T2): Schnyder wood of G. (v1v0), (v2v0), (v2v1) x: clockwise preordering of T0 = {v0v2ABCGDEFHIv1}.

v0 v1 v2 A B C D E F G H I

n n n n n n n n n n n n v0 v1 v2 A B C D E F G H I Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 12 / 15

slide-45
SLIDE 45

Planar polyline rook-drawing - Vertices

(T0, T1, T2): Schnyder wood of G. (v1v0), (v2v0), (v2v1) x: clockwise preordering of T0 = {v0v2ABCGDEFHIv1}. y: clockwise postordering of T1 = {DEABFHIGCv2v1} (v0 = 0).

v0 v1 v2 A B C D E F G H I

n n n n n n n n n n n n v0 v1 v2 A B C D E F G H I Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 12 / 15

slide-46
SLIDE 46

Planar polyline rook-drawing - Edges

v0 v1 v2

A B C D E F G H I

n n n n n n n n n n n n

v0 v1 v2 A B C D E F G H I

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 13 / 15

slide-47
SLIDE 47

Planar polyline rook-drawing - Edges

The edges (u, P0(u)) are bent at (x(u), y(P0(u)) + 1) (except for the first child in T0)

v0 v1 v2

A B C D E F G H I

n n n n n n n n n n n n

v0 v1 v2 A B C D E F G H I

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 13 / 15

slide-48
SLIDE 48

Planar polyline rook-drawing - Edges

The edges (u, P0(u)) are bent at (x(u), y(P0(u)) + 1) (except for the first child in T0) The edges (u, P1(u)) are bent at (x(last descendant0(u)), y(u)) (no bend if u is a leaf of T0)

v0 v1 v2

A B C D E F G H I

n n n n n n n n n n n n

v0 v1 v2 A B C D E F G H I

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 13 / 15

slide-49
SLIDE 49

Planar polyline rook-drawing - Edges

The edges (u, P0(u)) are bent at (x(u), y(P0(u)) + 1) (except for the first child in T0) The edges (u, P1(u)) are bent at (x(last descendant0(u)), y(u)) (no bend if u is a leaf of T0) Edges of T2: not bent

v0 v1 v2

A B C D E F G H I

n n n n n n n n n n n n

v0 v1 v2 A B C D E F G H I

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 13 / 15

slide-50
SLIDE 50

Conclusion

Open questions: Is a sublinear number of bends sufficient to draw any plane graph planarly? If G is a graph with no triangle outer face, what are the conditions to draw G planarly? What is the minimum grid size requested to draw a planar straight-lines rook-drawing for a given plane graph? Is this minimum a constant?

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 14 / 15

slide-51
SLIDE 51

Thank you for your attention!

Claire Pennarun (LaBRI, Bordeaux) Rook-drawing for plane graphs GD 2015 15 / 15