1 Introduction
A straightline drawing of a graph G is a mapping of each vertex to a distinct point on the plane and of each edge to a straightline segment between the vertices. A path is monotone if there exists a line such that the projections of the vertices of on appear on in the same order as on . A straightline drawing of a graph G is monotone, if a monotone path connects every pair of vertices. We say that an angle is convex if . A tree is called ordered if the order of edges incident to any vertex is fixed. We call a drawing of an ordered tree rooted at nearconvex monotone if it is monotone and any pair of consecutive edges incident to a vertex, with the exception of a single pair of consecutive edges incident to , form a convex angle.
Monotone graph drawing has been lately a very active research area and several interesting results have appeared since its introduction by Angelini et al. [1]. In the case of trees, Angelini et al. [1] provided two algorithms that used ideas from number theory (SternBrocot trees [3, 14] [6, Sect. 4.5]) to produce monotone tree drawings. Their BFSbased algorithm used an grid while their DFSbased algorithm used an grid. Later, Kindermann et al. [12] provided an algorithm based on Farey sequence (see [6, Sect. 4.5]) that used an grid. He and He in a series of papers [7, 8, 9] gave algorithms, also based on Farey sequences, that eventually reduced the required grid size to . Their monotone tree drawing uses a grid which is asymptotically optimal as there exist trees which require at least area [8]. In a recent paper, Oikonomou and Symvonis [13] followed a different approach from number theory and gave an algorithm based on a simple weighting method and some simple facts from geometry, that draws a tree on an grid.
Hossain and Rahman [11] showed that by modifying the embedding of a connected planar graph we can produce a planar monotone drawing of that graph on an grid. To achieve that, they reinvented the notion of an orderly spanning tree introduced by Chiang et al. [4] and referred to it as good spanning tree. Finally, He and He [10] proved that Felsner’s algorithm [5] builds convex monotone drawings of 3connected planar graphs on grids in linear time.
A inner planar graph is a planar graph that has a plane drawing with at most inner vertices, i.e., vertices that do not lie on the boundary of the outer face of its drawing. An outerplanar graph is a inner planar graph. In this paper, we show how to construct a monotone drawing of a inner planar graph on a grid. This yields monotone drawings for outerplanar graphs on a grid, improving the results in [2, 11]. Proofs of lemmata/theorems can be found in the Appendix.
2 Preliminaries
Let be a tree rooted at a vertex . Denote by the subtree of rooted at vertex . By we denote the number of vertices of . In the rest of the paper, we assume that all tree edges are directed away from the root.
Our algorithm for obtaining a monotone plane drawing of a inner planar graph in based on our ability: i) to produce for any rooted tree a compact monotone drawing that satisfies specific properties and ii) to identify for any planar graph a good spanning tree.
Theorem 2.1 (Oikonomou, Symvonis [13])
Given an vertex tree rooted at vertex , we can produce in time a monotone drawing of where: i) the root is drawn at , ii) the drawing in nonstrictly slopedisjoint^{1}^{1}1See [13] for the definition of nonstrictly slopedisjoint drawings of trees., iii) the drawing is contained in the first quadrant, and iv) it fits in an grid.
By utilizing and slightly modifying the algorithm that supports Thm. 2.1, we can obtain a specific monotone tree drawing that we later use in our algorithm for monotone inner planar graphs.
Theorem 2.2
Given an vertex tree rooted at vertex , we can produce in time a monotone drawing of where: i) the root is drawn at , ii) the drawing in nonstrictly slopedisjoint, iii) the drawing is nearconvex, iv) the drawing is contained in the second octant (defined by two halflines with a common origin and slope and , resp.), and v) it fits in a grid.
The following definition of a good spanning tree is due to Hossain and Rahman [11]. Let be a connected embedded plane graph and let be a vertex of lying on the boundary of its outer face. Let be an ordered spanning tree of rooted in that respects the embedding of . Let be the unique path in from the root to a vertex . The path divides the children of , except , into two groups; the left group and the right group . A child of is in group and, more specifically in a subgroup of denoted by , if the edge appears before edge in clockwise order of the edges incident to when the ordering starts from edge . Similarly, a child of is in group and more specifically in a subgroup of denoted by if the edge appears after edge in clockwise order of the edges incident to when the ordering starts from edge . A tree is called a good spanning tree of if every vertex of satisfies the following two conditions with respect to (see Figure 2 for an example of a good spanning tree (solid edges)):

does not have a nontree edge ; and

The edges of incident to vertex , excluding , can be partitioned into three disjoint (and possibly empty) sets and satisfying the following conditions:

Each of and is a set of consecutive nontree edges and is a set of consecutive tree edges.

Edges of and appear clockwise in this order after edge .

For each edge , for some , , and for each edge , for some , .

Theorem 2.3 ([4, 11])
Let be a connected planar graph of vertices. Then has a planar embedding that contains a good spanning tree. Furthermore, and a good spanning tree of can be found in time.
Consider an embedded plane graph for which a good spanning tree exists. We say that a nontree edge of covers vertex if lies in the inner face delimited by the simple cycle formed by treeedges of and . Vertices on the cycle are not covered by edge .
Lemma 1
If a planar graph has a inner embedding, then has a inner embedding which contains a good spanning tree , where . Moreover, each nontree edge covers at most of ’s leaves.
3 inner Monotone Drawings
The general idea for producing a monotone drawing of plane inner graph which has a good spanning tree is to first obtain a monotone drawing of satisfying the properties of Thm 2.2 and then to insert the remaining nontree edges in a way that the drawing remains planar. The insertion of a nontree edge may require to slightly adjust the drawing obtained up to that point, resulting in a slightly larger drawing. As it turns out, the insertion of a subset of the nontree edges may violate the planarity of the drawing and, moreover, if these edges are considered in a proper order, the increase on the size of the drawing can be kept small (up to a factor of for each dimension).
Consider a plane graph that has a good spanning tree . For any nontree edge of , we denote by the set of leafvertices of covered by . A nontree edge is called a leader edge if and there doesn’t exist another edge such that with lying in the inner of the cycle induced by the edges of and . In Fig. 2, leader edges are drawn as dashed edges. We also have that , , , and .
Lemma 2
Let be a inner plane graph that has a good spanning tree. Then, there exist at most leader edges in .
Proof (Sketch)
Firstly observe that a boundary vertex of that is a leafvertex in cannot be covered by any edge of . That is, the set , for any nontree edge , contains only innervertices of , and thus, . The proof then easily follows by observing that for any two distinct leader edges , exactly one of the following statements holds: i) , ii) , iii) . ∎
Lemma 3
Let be a plane graph that has a good spanning tree and let be a monotone drawing of that is nearconvex and nonstrictly slopedisjoint. Let be the drawing produced if we add all leader edges of to and be the drawing produced if we add all nontree edges of to . Then, is planar if and only if is planar.
Lemma 3 indicates that we only have to adjust the original drawing of so that after the addition of all leader edges it is still planar. Then, the remaining nontree edges can be drawn without violating planarity. Note that, for the proof of Lemma 3, it is crucial that the original drawing of is nearconvex.
Consider the nearconvex drawing of a good spanning tree rooted at that is nonstrictly slopedisjoint. Assume that is drawn in the first quadrant with its root at . Let be a vertex of and be its parent. Vertices and are drawn at grid points and , resp. We define the reference vector of with respect to its parent in , denoted by
, to be vector
. We emphasize that the reference vector of a tree vertex is defined wrt the original drawing of and does not change even if the drawing of is modified by our drawing algorithm.The elongation of edge by a factor of , (also referred to as a elongation) translates the drawing of subtree along the direction of edge so that the new length of increases by times the length of the reference vector of . Since the elongation factor is a natural number, the new drawing is still a grid drawing. Let . After a elongation of , vertex is drawn at point . A 0elongation leaves the drawing unchanged. Note that, by appropriately selecting the elongation factor for an upward tree edge , we can reposition so that it is placed above any given point .
If we insert the leader edges in the drawing of the good spanning tree in an arbitrary order, we may have to adjust the drawing more than one time for each inserted edge. This is due to dependencies between leader edges. Fig. 2 describes the two types of possible dependencies. In the case of Fig. 2(a), the leader edge must by inserted first since . Inserting leader so that it is not intersected by any tree edge can be achieved by elongating edges and by appropriate factors so that vertices and are both placed at grid points above (i.e., with larger coordinate) vertex .
In the case of Fig. 2(b), we have that , , and . However, leader must be inserted first since one of its endpoints () is an ancestor of an endpoint () of . Again, inserting leader so that it is not intersected by any tree edge can be achieved by elongating edges and by appropriate factors so that vertices and are both placed at grid points above vertex .
Lemma 4
Let be a plane graph that has a good spanning tree and let be a drawing of that satisfies the properties of Thm 2.2. Then, there exists an ordering of the leader edges, such that if they are inserted into (with the appropriate elongations) in that order they need to be examined exactly once.
Our method for producing monotone drawings of inner planar graphs is summarized in Algorithm 1. A proof that the produced drawing is actually a monotone plane drawing follows from the facts that i) there is always a good spanning tree with at most inner vertices (Lemma 1), ii) there is a monotone tree drawing satisfying the properties of Thm 2.2, iii) the operation of edge elongation on the vertices of a nearconvex monotone nonstrictly slopedisjoint tree drawing maintains these properties, iv) the ability to always insert the leader edges into the drawing without violating planarity (through elongation), and v) the ability to insert the remaining nontree edges (Lemma 3).
Let and be the reference vectors of and , resp. When we process leader edge (lines 915 of Algorithm 1), factors and are used for the elongation of edges and , resp. The use of these elongation factors ensures that both and are placed above vertex , and thus the insertion of edge leaves the drawing planar. When the leader edges are processed in the order dictated by their dependencies (line 6 of Algorithm 1), we can show that:
Lemma 5
Based on Lemma 5, we can easily show the main result of our paper.
Theorem 3.1
Let be an vertex inner planar graph. Algorithm 1 produces a planar monotone drawing of on a grid.
A corollary of Thm 3.1 is that for an vertex outerplanar graph Algorithm 1 produces a planar monotone drawing of on a grid. However, we can further reduce the grid size down to .
Theorem 3.2
Let be an vertex outerplanar graph. Then, there exists an planar monotone grid drawing of .
Proof
Simply observe that since an outerplanar graph has no leader edges, the drawing produced by Algorithm 1 is identical to that of the original drawing of the good spanning tree . In Algorithm 1 we used a drawing of in the second octant in order to simplify the elongation operation. Since outerplanar graphs have no leader edges, they require no elongations and we can use instead the (first quadrant) monotone tree drawing of [13], appropriately modified so that it yields a nearconvex drawing. ∎
4 Conclusion
We defined the class of inner planar graphs which bridges the gap between outerplanar and planar graphs. For an vertex inner planar graph , we provided an algorithm that produces a monotone grid drawing of . Building algorithms for inner graphs that incorporate into their time complexity or into the quality of their solution is an interesting open problem.
References
 [1] Angelini, P., Colasante, E., Di Battista, G., Frati, F., Patrignani, M.: Monotone drawings of graphs. Journal of Graph Algorithms and Applications 16(1), 5–35 (2012). https://doi.org/10.7155/jgaa.00249
 [2] Angelini, P., Didimo, W., Kobourov, S., Mchedlidze, T., Roselli, V., Symvonis, A., Wismath, S.: Monotone drawings of graphs with fixed embedding. Algorithmica 71(2), 233–257 (2015). https://doi.org/10.1007/s0045301397903
 [3] Brocot, A.: Calcul des rouages par approximation, nouvelle methode. Revue Chronometrique 6, 186–194 (1860)
 [4] Chiang, Y., Lin, C., Lu, H.: Orderly spanning trees with applications. SIAM Journal on Computing 34(4), 924–945 (2005). https://doi.org/10.1137/S0097539702411381
 [5] Felsner, S.: Convex drawings of planar graphs and the order dimension of 3polytopes. Order 18(1), 19–37 (Mar 2001). https://doi.org/10.1023/A:1010604726900
 [6] Graham, R.L., Knuth, D.E., Patashnik, O.: Concrete Mathematics: A Foundation for Computer Science. AddisonWesley Longman Publishing Co., Inc., Boston, MA, USA, 2nd edn. (1994)
 [7] He, D., He, X.: Nearly optimal monotone drawing of trees. Theoretical Computer Science 654, 26–32 (2016). https://doi.org/10.1016/j.tcs.2016.01.009
 [8] He, D., He, X.: Optimal monotone drawings of trees. SIAM Journal on Discrete Mathematics 31(3), 1867–1877 (2017). https://doi.org/10.1137/16M1080045, https://doi.org/10.1137/16M1080045
 [9] He, X., He, D.: Compact monotone drawing of trees. In: Xu, D., Du, D., Du, D. (eds.) Computing and Combinatorics: 21st International Conference, COCOON 2015, Beijing, China, August 46, 2015, Proceedings. pp. 457–468. Springer International Publishing, Cham (2015). https://doi.org/10.1007/9783319213989_36
 [10] He, X., He, D.: Monotone drawings of 3connected plane graphs. In: Bansal, N., Finocchi, I. (eds.) Algorithms  ESA 2015. pp. 729–741. Springer Berlin Heidelberg, Berlin, Heidelberg (2015)
 [11] Hossain, M.I., Rahman, M.S.: Good spanning trees in graph drawing. Theoretical Computer Science 607, 149–165 (2015). https://doi.org/10.1016/j.tcs.2015.09.004
 [12] Kindermann, P., Schulz, A., Spoerhase, J., Wolff, A.: On monotone drawings of trees. In: Duncan, C., Symvonis, A. (eds.) Graph Drawing: 22nd International Symposium, GD 2014, Würzburg, Germany, September 2426, 2014, Revised Selected Papers. pp. 488–500. Springer Berlin Heidelberg, Berlin, Heidelberg (2014). https://doi.org/10.1007/9783662458037_41
 [13] Oikonomou, A., Symvonis, A.: Simple compact monotone tree drawings. In: Frati, F., Ma, K. (eds.) Graph Drawing and Network Visualization  25th International Symposium, GD 2017, Boston, MA, USA, September 2527, 2017, Revised Selected Papers. Lecture Notes in Computer Science, vol. 10692, pp. 326–333. Springer (2017). https://doi.org/10.1007/9783319739151_26
 [14] Stern, M.: Ueber eine zahlentheoretische funktion. Journal fur die reine und angewandte Mathematik 55, 193–220 (1858)
Appendix
Appendix 0.A Additional material for Section 2
0.a.1 Some more definitions
Let be a drawing of a graph and be an edge from vertex to vertex in . The slope of edge , denoted by , is the angle spanned by a counterclockwise rotation that brings a horizontal halfline starting at and directed towards increasing coordinates to coincide with the halfline starting at and passing through .
Angelini et al. [1] defined the notion of slopedisjoint tree drawings and proved that a every such drawing is monotone. In order to simplify the presentation of our compact tree drawing algorithm presented in [13], we slightly extended the definition of slopedisjoint tree drawings given by Angelini et al. [1]. More specifically, we called a tree drawing of a rooted tree a nonstrictly slopedisjoint drawing if the following conditions hold:

For every vertex , there exist two angles and , with such that for every edge that is either in or enters from its parent, it holds that .

For every two vertices such that is a child of , it holds that .

For every two vertices with the same parent, it holds that either or .
The idea behind the original definition of slopedisjoint tree drawings is that all edges in the subtree as well as the edge entering from its parent will have slopes that strictly fall within the angle range defined for vertex . is called the angle range of with and being its boundaries. In our extended definition, we allowed for angle ranges of adjacent vertices (parentchild relationship) or sibling vertices (children of the same parent) to share angle range boundaries. Note that replacing the “” symbols in our definition by the “” symbol gives us the original definition of Angelini et al. [1] for the slopedisjoint tree drawings. Nonstrictly slopedisjoint tree drawings are also monotone.
0.a.2 Proof of Theorem 2.2
Theorem 2. Given an vertex tree rooted at vertex , we can produce in time a monotone drawing of where: i) the root is drawn at , ii) the drawing in nonstrictly slopedisjoint, iii) the drawing is nearconvex, iv) the drawing is contained in the second octant (defined by two halflines with a common origin and slope and , resp.), and v) it fits in a grid.
Proof
We show how to extend/modify the algorithm presented in [13] so that it satisfies all properties specified in the theorem. For brevity, we refer to the algorithm of [13] as Algorithm MQuadTD (abbreviation for “Monotone Quadrant Tree Drawing”).
Algorithm MQuadTD constructs a nonstrictly slopedisjoint tree drawing with the root of the tree drawn at . So, the first two conditions are satisfied. In addition, the tree is drawn at the first quadrant of its root. We first show how Algorithm MQuadTD can be extended so that it produces nearconvex drawings. Since Algorithm MQuadTD produces a nonstrictly slopedisjoint tree drawing, it splits the anglerange of every internal tree vertex into as many slices as ’s children and assigns these slices to the children of .
We denote by the parent of internal tree vertex . Note that, in a nonstrictly slopedisjoint tree drawing that is drawn is an circular sector of size at most , i.e., the anglerange of the root is , a nonconvex angle can be only formed between the edge entering an internal vertex and the edge connecting with its first or last child, say and , resp. Moreover, in this case a convex angle may be formed only if the slope of edge falls within the anglerange of either or . W.l.o.g., say that the slope of falls within the angle range of ; the other case is symmetric. It turns out that we can easily avoid creating a nonconvex angle by simply drawing point on the first available grid point on the extension of . If we place in this way, then the length of edge will be equal to that of , which guarantees that this modification will not increase the required grid size.
Having modified Algorithm MQuadTD as described above, yields a drawing of that satisfies conditions i), ii) and iii). In order get a drawing that satisfies all five conditions we work as follows. We construct a new tree by getting two copies of and making them subtrees of a new root . Since has vertices, we can get a drawing of that lies in the first quadrant, satisfies conditions i), ii) and iii) and, moreover, it fits on a grid with its root being the only vertex being place on the or the axis. By the construction of and its symmetry, we observe that its subdrawing that lies in the second octant corresponds to a drawing of the initial tree . In this way, we obtain a drawing that satisfies all 5 conditions. To complete the proof, simply note that all described modification of Algorithm MQuadTD can be easily accommodated in time. ∎
The following Lemma in not included in the main part of the paper.
Lemma 6
Let be a drawing for tree which satisfies all properties of Thm2.2 (and can be produced by the modification of algorithm MQuadTD as described in the proof of Thm2.2). Then, if we substitute in the edges entering the leaves of by semiinfinite lines (i.e., rays), then partitions the first quadrant into unbounded convex regions.
Proof
See Figure 4 for an example drawing. Note that since is monotone, it is also planar. Let be the drawing we obtain by substituting each leaf edge in by a ray. In addition, we add to two extra rays, the first coinciding with the positive axis and the second with the positive axis. The lemma states that all unbounded inner faces in are unbounded convex regions.
Since the original drawing of is nearconvex and by the fact that the two extra rays lie on the and axes, all angles (in the first quadrant) between consecutive edges incident to any vertex are convex. Moreover, since the drawing of is also (nonstrictly) slopedisjoint, each pair of leaf edges is drawn completely inside nonoverlapping (but possibly touching) angular sectors. Thus, the rays which substitute these edges diverge. Then, the proof follows by the planarity of the original tree drawing of . ∎
0.a.3 Proof of Lemma 1
Lemma 1. If a planar graph has a inner embedding, then has a inner embedding which contains a good spanning tree, where . Moreover, each nontree edge covers at most of ’s leaves.
Proof
The algorithm that supports Theorem 2.3 (see [11]), when given a inner embedding, it produces a planar embedding which contains a good spanning tree by changing the original embedding. It does so by only moving components and split components out of a cycle induced by the constructed good spanning tree^{2}^{2}2For the definitions of a components and split components ans well as details of the good spanning tree construction algorithm see [11].. Therefore, the number of vertices in the outer face of is equal or greater than the number of vertices in the original embedding of , which implies that is a inner planar graph, where . Moreover there are at most leaf vertices that are covered by any nontree edge since there are at most inner vertices. ∎
Appendix 0.B Additional material for Section 3
Let be a plane graph and being a good spanning tree of . For any vertex of , the leftmost path (resp. rightmost path) of , denoted by (resp. ), starts at , traverses edges of by following the last (resp. first) tree edge of each vertex in the counterclockwise order, and terminates at a leaf vertex. Recall that denotes the set of leaf vertices of covered by then nontree edge . We will call the nontree vertices of that are not leader edges, ordinary edges. Finally, by we denote the convex hull of a pointset .
The following technical lemma is not included in the main part of the paper.
Lemma 7
Let be a plane graph, be a good spanning tree of , a monotone drawing of which in nearconvex and nonstrictly slopedisjoint, and a leader edge of . W.l.o.g., let the inner face of the cycle induced by and edges of lie to the right of edge when we traverse it from to . Finally, let be the set of vertices contained in paths and . Then, all vertices of are located on the the convex hull . Moreover, any ordinary edge that covers exactly the same leaf vertices as , (i.e., ) has one of its endpoints on and the other on .
Proof
Refer to Figure 4. First, we prove that all vertices of are located on the convex hull . Let and be the leaves at the end of and , resp., and also let (resp. ) be the first (resp. last) edge of and (resp. ) be the first (resp. last) edge of .
We observe that if we substitute and with rays toward the decreasing coordinates, then the two rays intersect. Moreover, if we substitute and with rays toward the increasing coordinates, then the two rays diverge. Both of these two facts are due to that drawing is nonstrictly slopedisjoint. Combined with the fact that is near convex, proves that contains all vertices of .
Now we prove that every ordinary edge that covers exactly the same leaf vertices as (i.e., set ), has one of its endpoints in and the other in .
For a contradiction, assume that there is an ordinary edge that covers exactly set of leaf vertices and does not have its endpoints in . Edge cannot lie inside the cycle induced by and because it would violate the fact that is a leader edge. Since do not have its endpoints in , then covers at least one of leaf vertices or , a contradiction. Thus, has its endpoints on . By taking also into account that is a good spanning tree, and thus, no nontree edge connects two vertices on the same path from the root to a leaf, we conclude that one of the endpoints of lies on and the other on . ∎
0.b.1 Proof of Lemma 3
Lemma 3. Let be a plane graph that has a good spanning tree and let be a monotone drawing of that is nearconvex and nonstrictly slopedisjoint. Let be the drawing produced if we add all leader edges of to and be the drawing produced if we add all nontree edges of to . Then, is planar if and only if is planar.
Proof
First recall that when we add edges to an existing drawing we only add them as straight line segments.
 “”

It trivially holds. is a subgraph of by definition. Any subgraph of a planar graph is planar.
 “”

We simply have to show that we can insert all ordinary edges into without violating planarity. Consider and arbitrary ordinary edge . Then, there exists a leader edge such that . If not, would be a leader edge. W.l.o.g., let the inner face of the cycle induced by and edges of lie to the right of edge when we traverse it from to . Consider paths and and let and be their leaf endpoints, resp. Let be the set of vertices of paths and .
Since drawing is planar and, by Lemma7, we know that contains all points of , the internal face induced by the cycle formed by edge , , and the line segment is empty and convex. Thus, since one endpoint of lies on and the other on (Lemma7), can be inserted to the drawing without violating planarity. In the same way, we can insert all ordinary edges. The proof is completed by observing that since is a plane graph, no two ordinary edges intersect.
∎
0.b.2 Proof of Lemma 4
Lemma 4. Let be a plane graph that has a good spanning tree and let be a drawing of that satisfies the properties of Thm 2.2. Then, there exists an ordering of the leader edges, such that if they are inserted into (with the appropriate elongations) in that order they need to be examined exactly once.
Proof (Sketch)
We create a directed dependency graph that has the leader edges as its vertices. The edges of correspond to the dependencies between leader edges of . Let and be two leader edges of . If we insert a directed edge from to in . If we insert a directed edge from to in . These dependency edges correspond to the dependency depicted in Figure 2(a). In addition, there may be a dependency between and even though . This is depicted in Figure 2(b) and occurs when an endpoint of is an ancestor of or vice versa. In this case we insert an edge in from the “ancestor” to the “descendant” edge. The fact that is planar and is a good spanning tree imply that is actually a directed acyclic graph (DAG). Then, the ordering of the leader edges is obtained by topologically sorting DAG .
We note that the dependency graph is not necessarily connected. Since we study inner planar graphs, there are at most leaders and, thus, has at most vertices, and consequently . So, we need time for the topological ordering of which, together with the time required for the recognition of the leader edges, yield an time algorithm. However, we can improve it to time by avoiding to insert transitive edges into . ∎
0.b.3 Proof of Lemma 5
Lemma 5. Let be the drawing of the good spanning tree satisfying the properties of Thm 2.2 and let be the drawing of immediately after the insertion of leader edge by Algorithm 1. Let and be drawn in at points and , resp. Then, in the drawings of and are contained in and grids, resp.
Proof
We only prove the lemma for since the case for is symmetric.
Let be the parent of in the good spanning tree used in Algorithm 1. The insertion of leader edge in the drawing causes the elongation of edge and, as a result, translates the drawing of along the direction of .
Observe that no edge in has been elongated in a previous step. In order for an edge in to be elongated, a leader edge , such that or is in , must be selected for insertion. So, must be an ancestor of or . Then, leader depends on leader and has to follow in the sorted leaders list (line 6 of Algorithm 1). Thus, no edge in has been elongated prior to the elongation of .
The lemma follows from the facts that i) the initial drawing of the good spanning tree fits on a grid (Thm2.2) and ii) in , vertex is placed at point . Therefore, is contained in a grid. ∎
0.b.4 Proof of Theorem 3.1
Theorem 4. Let be an vertex inner planar graph. Algorithm 1 produces a planar monotone drawing of on a grid.
Proof
The proof that the drawing produced by Algorithm 1 is actually a monotone plane drawing follows from the facts that i) there is always a good spanning tree with at most inner vertices (Lemma 1), ii) there is a monotone tree drawing satisfying the properties of Thm 2.2, iii) the operation of edge elongation on the vertices of a nearconvex monotone nonstrictly slopedisjoint tree drawing maintains these properties, iv) the ability to always insert the leader edges into the drawing without violating planarity (through elongation), and v) the ability to insert the remaining ordinary edges (Lemma 3).
Now we turn our attention to the grid size of the drawing produced by Algorithm 1. W.l.o.g., we assume that we deal with plane graphs that have only tree and leader edges. We can safely do so since, by Lemma 3, all ordinary edges can be inserted in the drawing without violating planarity.
We use induction on the number of leader edges. For the base case where , the grid bound holds by Theorem 2.2. For the induction step, we assume that the Theorem holds for plane graphs with less than leader edges, and we show that it also holds for plane graphs with leader edges.
Firstly note that, since all edges in the drawing have slopes greater than , the grid side length is dictated by the maximum coordinate of a leaf vertex.
Consider a plane graph that has a good spanning tree and of its nontree edges are leader edges. Let be the last leader edge considered by Algorithm 1. If we remove from we get a plane graph with leader edges.
By the induction hypothesis, the produced drawing of fits in a grid. Thus, the path from the root of to is contained in a grid.
Consider now the case where Algorithm 1 inserts leader edge into the drawing it has already produced for graph . During the iteration of the whileloop (lines 916 of Algorithm 1) for edge , at most two edges of are elongated. This means that the grid size of the drawing for , which is dictated as the maximum coordinate of a leaf vertex, is the maximum between the coordinate of a leaf vertex in either or , or it does not change. By Lemma 5 and the fact that during the elongation of edge , vertex may be translated at most grid points^{3}^{3}3Recall that denotes the reference vector of . above the highest leaf of the drawing of of , it follows that, after the insertion edge , the path from the root of to fits in a grid. So, the path from the root to any leaf of fits in a grid. However, we have that:
since . Thus, the path from the root to any leaf of fits in a grid. Similarly, the same holds for the path from the root of to any leaf of . This completes the proof. ∎