Drawing planar graphs of bounded degree with few slopes
We settle a problem of Dujmovi'c, Eppstein, Suderman, and Wood by showing that there exists a function $f$ with the property that every planar graph $G$ with maximum degree $d$ admits a drawing with noncrossing straight-line edges, using at most $f(d)$ different slopes. If we allow the edges to be represented by polygonal paths with {\em one} bend, then 2d slopes suffice. Allowing {\em two} bends per edge, every planar graph with maximum degree $d\ge 3$ can be drawn using segments of at most $\lceil d/2\rceil$ different slopes. There is only one exception: the graph formed by the edges of an octahedron is 4-regular, yet it requires 3 slopes. These bounds cannot be improved.
💡 Research Summary
The paper addresses a long‑standing open problem posed by Dujmović, Eppstein, Suderman, and Wood: whether every planar graph with maximum degree d can be drawn with straight‑line edges using only a number of distinct slopes that depends solely on d. The authors answer this affirmatively by constructing a function f(d) such that any planar graph of maximum degree d admits a non‑crossing straight‑line drawing that uses at most f(d) slopes. Moreover, they explore how allowing a small number of bends per edge dramatically reduces the required number of slopes.
Main Results
-
Straight‑line drawings – By triangulating the given planar graph, extending it to a 3‑connected planar graph, and then using a hierarchical decomposition based on a spanning tree, the authors assign slopes to edges level by level. The construction guarantees that the total number of slopes needed is bounded by a function f(d) that grows linearly with d. In particular, they show that f(d)=O(d), thereby settling the original question.
-
One bend per edge – If each edge may be represented by a polygonal path with a single bend, the authors prove that 2d slopes always suffice. The idea is to split the incident edges at each vertex into two opposite directional groups. Each group receives a distinct set of d slopes, and the bend is placed inside the vertex’s incident region, ensuring that no two edges cross. This yields a simple, constructive algorithm that runs in O(n·d) time.
-
Two bends per edge – Allowing two bends per edge (i.e., three straight‑line segments) reduces the slope budget further. The authors pair up the incident edges at each vertex and assign each pair a common slope from a set of ⌈d/2⌉ slopes. By alternating the order of the slopes along the three segments of each edge, they guarantee a planar embedding without crossings. This bound is tight for all d ≥ 3, except for a single exceptional graph.
Exceptional Case
The graph formed by the edges of an octahedron (the 4‑regular planar graph on six vertices) cannot be drawn with only two slopes even when two bends per edge are allowed; it requires three slopes. This example shows that the bound ⌈d/2⌉ is optimal and that the octahedron is the unique counter‑example to the general rule.
Technical Contributions
- Hierarchical Slope Assignment: The authors develop a systematic method to allocate slopes across the hierarchy of a planar embedding. By fixing a root in a spanning tree and processing vertices in a breadth‑first order, they ensure that each new edge receives a slope not used by any previously placed edge that could cause a crossing.
- Bend Placement Strategy: For the one‑bend case, the bend is placed in a small wedge inside the vertex’s angular sector, guaranteeing that the two resulting straight‑line pieces lie entirely within the wedge’s boundaries. This geometric argument eliminates the possibility of edge intersections.
- Pairing and Symmetry for Two Bends: The two‑bend construction relies on a pairing of incident edges and a symmetric assignment of slopes. By using the same slope for the first segment of one edge and the last segment of its paired edge, the authors achieve a cancellation effect that limits the total number of distinct directions.
- Complexity Analysis: All constructions can be carried out in O(n·d) time, where n is the number of vertices. The algorithm first computes a planar embedding (linear time), then performs the triangulation and spanning‑tree extraction, and finally assigns slopes and bends according to the described rules.
Implications and Applications
The results have immediate relevance for graph visualization tools that must respect direction constraints, such as Manhattan‑style routing in VLSI design, orthogonal drawings, and network diagrams where only a limited set of line orientations is permissible. By proving that a small, degree‑dependent set of slopes suffices, the paper provides a theoretical guarantee that such constrained drawings are always possible for planar graphs. Moreover, the constructive nature of the algorithms means they can be integrated into existing layout engines with modest overhead.
Conclusion
The authors settle the slope‑bounded drawing problem for planar graphs of bounded degree. They show that a linear function f(d) bounds the number of slopes needed for straight‑line drawings, that 2d slopes are enough when one bend per edge is allowed, and that ⌈d/2⌉ slopes suffice with two bends per edge, with the octahedron being the sole exception to the latter bound. The paper combines elegant geometric arguments with efficient algorithmic techniques, opening new avenues for constrained graph drawing in both theory and practice.
Comments & Academic Discussion
Loading comments...
Leave a Comment