10.1 Introduction

This chapter is concerned with straight-line drawings of undirected graphs, in which each edge is drawn as a straight-line segment joining two points that represent vertices.

Angular resolution is one of the well-known esthetic criteria for graph drawing, but its theoretical properties are not well understood. For a straight-line drawing of a graph, its vertex angular resolution is the minimum angle formed by two consecutive edges around a vertex, and its crossing angular resolution is the minimum angle formed by a crossing, while the crossing angular resolution is defined to be \(2\pi \) if there is no crossing. The total angular resolution of a straight-line drawing is the minimum of the vertex angular resolution and the crossing angular resolution. The vertex/crossing/total angular resolution of a graph is the supremum of the vertex/crossing/total angular resolution of any straight-line drawing of the graph. In this chapter, we review some of the results on angular resolution in the literature, and identify several open problems in the field.

This chapter is organized as follows. In Sect. 10.2, we introduce the necessary notation and look at a few examples. Section 10.3 is devoted to vertex angular resolution, where we will see two techniques to produce drawings with large vertex angular resolutions. The first one is to use a proper vertex coloring of the square of a graph, and the second one is to use a fixed set of slopes. In Sect. 10.4, we turn our attention to crossing angular resolution. There, we will see the relationship of crossing angular resolution with right-angle crossing graphs (or RAC graphs). In Sect. 10.5, we focus on total angular resolution, and, in Sect. 10.6, we conclude the chapter.

As is often the case, my view of the field is biased, and I do not even try to be comprehensive. Nevertheless, I hope this chapter still gives an introduction to the study of angular resolutions of graph drawing for interested readers.

10.2 Definitions and Examples

Let D be a straight-line drawing of an undirected graph G. In this chapter, we do not allow a vertex is placed on the relative interior of an edge, but we allow three or more edges to cross at the same point. For a vertex v in the drawing, its angular resolution is defined as the minimum angle formed by two edges incident to v. If the degree of v is zero, the resolution is defined to be \(\infty \), and if the degree of v is one, the resolution is defined to be \(2\pi \). The vertex angular resolution of the drawing D is the minimum resolution over all vertices of D and denoted by \(\mathop {\mathsf {var}}(D)\).

For a crossing in D, its angular resolution is defined as the minimum angle formed by two edges passing through the crossing. The crossing angular resolution of the drawing D is the minimum resolution over all crossings of D and denoted by \(\mathop {\mathsf {car}}(D)\). If D has no crossing, then the crossing angular resolution is defined to be \(2\pi \).

The total angular resolution of the drawing D is the minimum of the vertex angular resolution and the crossing angular resolution, and denoted by \(\mathop {\mathsf {tar}}(D)\).

The vertex angular resolution of a graph G is the supremum of the vertex angular resolutions of all straight-line drawings of G, and denoted by \(\mathop {\mathsf {var}}(G)\). Similarly, the crossing angular resolution of a graph G is the supremum of the crossing angular resolutions of all straight-line drawings of G, and denoted by \(\mathop {\mathsf {car}}(G)\). The total angular resolution of a graph G is the supremum of the total angular resolutions of all straight-line drawings of G, and denoted by \(\mathop {\mathsf {tar}}(G)\).

We note that vertex (crossing, total) angular resolution is also called vertex (crossing, total) angle resolution in the literature, respectively.

Now, we will see a couple of examples. Consider \(K_4\), a complete graph with four vertices. Refer to Fig. 10.1. In the left drawing of Fig. 10.1, the vertex angular resolution is \(\pi /6\), the crossing angular resolution is \(2\pi \), and thus the total angular resolution is \(\pi /6\). On the other hand, in the right drawing of Fig. 10.1, the vertex angular resolution is \(\pi /4\), the crossing angular resolution is \(\pi /2\), and thus the total angular resolution is \(\pi /4\). A lesson learned is that introducing a crossing may increase the total angular resolution of the drawing. It turns out that the total angular resolution of \(K_4\) is \(\pi /4\). A proof will be given in Sect. 10.5.

Fig. 10.1
figure 1

Angular resolutions of \(K_4\), a complete graph with four vertices. In the left drawing, the vertex angular resolution is \(\pi /6\), the crossing angular resolution is \(2\pi \), and thus the total angular resolution is \(\pi /6\). In the right drawing, the vertex angular resolution is \(\pi /4\), the crossing angular resolution is \(\pi /2\), and thus the total angular resolution is \(\pi /4\)

Next, consider a three-dimensional cube \(Q_3\). It has 8 vertices and 12 edges. Refer to Fig. 10.2. In the left drawing, the vertex angular resolution is \(\pi /4\), the crossing angular resolution is \(2\pi \), and thus the total angular resolution is \(\pi /4\). In the middle drawing, the vertex angular resolution is \(\pi /4\), the crossing angular resolution is \(\pi /2\), and thus the total angular resolution is \(\pi /4\). In the right drawing, the vertex angular resolution is \(\pi /3\), the crossing angular resolution is \(\pi /3\), and thus the total angular resolution is \(\pi /3\). It turns out that the total angular resolution of \(Q_3\) is \(\pi /3\). A proof will be given in Sect. 10.5.

Fig. 10.2
figure 2

Angular resolutions of \(Q_3\), a three-dimensional cube. In the left drawing, the vertex angular resolution is \(\pi /4\), the crossing angular resolution is \(2\pi \), and thus the total angular resolution is \(\pi /4\). In the middle drawing, the vertex angular resolution is \(\pi /4\), the crossing angular resolution is \(\pi /2\), and thus the total angular resolution is \(\pi /4\). In the right drawing, the vertex angular resolution is \(\pi /3\), the crossing angular resolution is \(\pi /3\), and thus the total angular resolution is \(\pi /3\)

Next, consider the Petersen graph. Refer to Fig. 10.3. In the left drawing, the vertex angular resolution is \(\pi /5\), the crossing angular resolution is \(2\pi /5\), and thus the total angular resolution is \(\pi /5\). In the middle drawing, the vertex angular resolution is \(\pi /6\), the crossing angular resolution is \(\pi /3\), and thus the total angular resolution is \(\pi /6\). In the right drawing, the vertex angular resolution is \(\pi /3\), the crossing angular resolution is \(\pi /3\), and thus the total angular resolution is \(\pi /3\). It turns out that the total angular resolution of the Petersen graph is \(\pi /3\). A proof will be given in Sect. 10.5.

Fig. 10.3
figure 3

Angular resolutions of the Petersen graph. In the left drawing, the vertex angular resolution is \(\pi /5\), the crossing angular resolution is \(2\pi /5\), and thus the total angular resolution is \(\pi /5\). In the middle drawing, the vertex angular resolution is \(\pi /6\), the crossing angular resolution is \(\pi /3\), and thus the total angular resolution is \(\pi /6\). In the right drawing, the vertex angular resolution is \(\pi /3\), the crossing angular resolution is \(\pi /3\), and thus the total angular resolution is \(\pi /3\)

One may wonder why the definitions of angular resolutions of a graph use “supremum” rather than “maximum.” This is because the maximum is not necessarily attained. Refer to Fig. 10.4. The vertex angular resolution of the drawing is \(\pi /3 - \varepsilon \), where \(\varepsilon \) depends on the small gap between two vertices at the bottom. This gap cannot be zero, as otherwise the drawing is degenerated (i.e., the map from the vertex set to the plane is not injective). Thus, the vertex angular resolution of this graph is \(\pi /3\), which is never attained.

Fig. 10.4
figure 4

An example in which the vertex angular resolution is never attained [13]. The vertex angular resolution of the drawing is \(\pi /3-\varepsilon \), where \(\varepsilon >0\) depends on the small gap between two vertices at the bottom

10.3 Vertex Angular Resolution

Vertex angular resolution was first investigated by Formann, Hagerup, Haralambides, Kaufmann, Leighton, Simvonis, Welzl, and Woeginger [13], but under the name of “resolution.” As observed by them, the following easy upper bound for the vertex angular resolution can be obtained. Namely, for every undirected graph G with at least one edge, \(\mathop {\mathsf {var}}(G) \le 2\pi /\varDelta (G)\), where \(\varDelta (G)\) is the maximum degree of G. This is because a vertex v of maximum degree is incident to \(\varDelta (G)\) edges and those \(\varDelta (G)\) edges partition the degree of \(2\pi \). In other words, we have

$$\begin{aligned} \mathop {\mathsf {var}}(G) = O(1/\varDelta (G)) \end{aligned}$$
(10.1)

for every undirected graph G.

As a general lower bound for the vertex angular resolution, Formann et al. [13] proved that

$$\begin{aligned} \mathop {\mathsf {var}}(G) = \varOmega (1/\varDelta (G)^2) \end{aligned}$$
(10.2)

for every undirected graph G. This implies that the vertex angular resolution of a bounded-degree graph is constant (i.e., does not depend on the number of vertices). Since their argument is nice and short, we reproduce the proof here. In the proof, we explicitly create a straight-line drawing D of G such that \(\mathop {\mathsf {var}}(D) = \varOmega (1/\varDelta (G)^2)\).

The idea is to use a proper vertex coloring of the square \(G^2\). The square \(G^2\) of a graph G is defined as follows. The vertex set of \(G^2\) is the same as that of G, and two vertices u and v are adjacent in \(G^2\) if and only if they are within a distance of two in G.

The construction goes as follows. Refer to Fig. 10.5. First, we find a proper vertex coloring of the square \(G^2\). It is a basic fact that the greedy algorithm always finds a proper vertex coloring with \(\varDelta (H)+1\) colors for every undirected graph H.Footnote 1 Therefore, the vertices of the square \(G^2\) can be properly colored with \(\varDelta (G^2)+1 = O(\varDelta (G)^2)\) colors. Let \(\chi = O(\varDelta (G)^2)\) be the number of colors used in this coloring. Then, consider a regular \(\chi \)-gon, and associate each of the \(\chi \) colors with a corner of the \(\chi \)-gon. For every vertex v of the graph, we place v around the corner of the \(\chi \)-gon associated with the color of v. We draw every edge as it runs in G. This completes the construction. Note that the construction can be done in quadratic time.

Fig. 10.5
figure 5

Proof of \(\mathop {\mathsf {var}}(G) = \varOmega (1/\varDelta (G)^2)\) by Formann et al. [13]. The left figure shows a given graph G, and the middle figure is the square \(G^2\), together with a proper 5-coloring. The right figure shows how to place the vertices of G around the corner of a regular pentagon

We can observe that the vertex angular resolution of the constructed drawing is \(\varOmega (1/\chi )\) as follows. Let v be a vertex of G, and \(u_1, u_2\) be two neighbors of v. By the construction of \(G^2\), in a proper vertex coloring of \(G^2\), the three vertices v, \(u_1\), and \(u_2\) receive different colors. Therefore, the angle formed by two edges \(u_1v\) and \(u_2v\) in the constructed drawing is at least \(\pi /\chi \) approximately, which is \(\varOmega (1/\chi )\). Since \(\chi =O(\varDelta (G)^2)\), this gives a straight-line drawing D with \(\mathop {\mathsf {var}}(D) = \varOmega (1/\varDelta (G)^2)\).

This coloring argument was used to show that \(\mathop {\mathsf {var}}(G) = \varOmega (1/\varDelta (G))\) for every planar graph G. This is true because \(G^2\) has a proper vertex coloring with \(O(\varDelta (G))\) colors when G is planar. A short and simple argument for this bound can be found in [16]. The determination of a tight upper bound for the chromatic number of the square of a planar graph has a long history in graph theory. See [15] for the current best bound of \(\frac{3}{2}\varDelta (G) + o(\varDelta (G))\).

Consider the case when G is a d-dimensional cube. Formann et al. [13] proved that \(\mathop {\mathsf {var}}(G) \ge \pi /d\). To this end, they gave the following algorithm. We first fix the following set of d slopes of line segments used for drawing edges. The set is \(\{0, \pi /d, 2\pi /d, \dots , (d-1)\pi /d\}\). The drawing is constructed iteratively. The one-dimensional cube (i.e., two vertices and one edge) is drawn horizontally. Suppose that, for each k, \(1\le k < d\), the k-dimensional cube is drawn using the first k slopes in our slope set. Then, to draw a \((k+1)\)-dimensional cube, we create two copies of the drawing of a k-dimensional cube, and translate one of them along the \((k+1)\)th slope in the slope set. Then, the missing edges between two copies are drawn using the \((k+1)\)th slope. Figure 10.6 shows an example. Since the slopes in the drawing are restricted to our set, the vertex angular resolution of the constructed drawing is \(\pi /d\).

Fig. 10.6
figure 6

The drawing of a d-dimensional cube proposed by Formann et al. [13], when \(d=4\)

This drawing for d-dimensional cubes is an example of the method of a set of fixed slopes. The method recurs for crossing angular resolution and total angular resolution in the subsequent sections.

The lower bound in Eq. (10.2) is almost tight. Formann et al. [13] proved by a probabilistic argument that there exists a \(\varDelta \)-regular graph G such that \(\mathop {\mathsf {var}}(G) = O((\log \varDelta )/\varDelta ^2)\) for any \(\varDelta \).

On the computational side, Formann et al. [13] proved that it is NP-hard to decide if the vertex angular resolution of a given undirected graph G is \(2\pi /\varDelta (G)\) or not, even when \(\varDelta (G) = 4\). This implies that the computation of the vertex angular resolution of a given undirected graph is NP-hard.

Straight-line drawings obtained by the results in Formann et al. [13] may produce crossings. Therefore, people started to look at the vertex angular resolutions of straight-line plane drawings, i.e., straight-line drawings without edge crossings. Of course, in this case, graphs under investigation must be planar.

For lower bounds, Malitz and Papakostas [21] proved that every planar graph G has a straight-line plane drawing D with \(\mathop {\mathsf {var}}(D) = \varOmega (1/\alpha ^{\varDelta (G)})\) with \(\alpha = 1/(3+2\sqrt{3}) \approx 0.15\). They also proved that every outerplanar graph G has a straight-line plane drawing D with \(\mathop {\mathsf {var}}(D) = \varOmega (1/\varDelta (G))\). Their proof for planar graphs used the coin representation of a planar graph [19] (i.e., every planar graph can be represented by a system of touching disks) together with an appropriate Möbius transformation. This idea was also used for the planar slope number problem by Keszegh, Pach, and Pálvölgyi [18]. The planar slope number of a planar graph G is the minimum number of slopes formed by edges in all straight-line plane drawings of G. Keszegh et al. [18] proved that the planar slope number of a planar graph only depends on the maximum degree.

For an upper bound, Garg and Tamassia [14] constructed a planar graph G such that every straight-line plane drawing D of G has \(\mathop {\mathsf {var}}(D) = O(\sqrt{(\log \varDelta (G))/\varDelta (G)^3})\). Their recursive construction is illustrated in Fig. 10.7. This gives rise to the following open problem.

Problem 10.1

Determine the asymptotically tight bound for the maximum vertex angular resolution over all straight-line plane drawings of a planar graph with maximum degree \(\varDelta \).

Fig. 10.7
figure 7

Planar graphs G used by Garg and Tamassia [14] for which every straight-line plane drawing D has \(\mathop {\mathsf {var}}(D) = O(\sqrt{(\log \varDelta (G))/\varDelta (G)^3})\)

10.4 Crossing Angular Resolution

As far as the author knows, the explicit introduction of crossing angular resolution was first made by Di Giacomo, Didimo, Eades, Hong and Liotta [8], who simply called the crossing angular resolution the crossing resolution. They proved that the crossing angular resolution of a complete graph \(K_n\) with n vertices is at least \(\pi /\lceil n/3 \rceil \), and at most \(\pi /(\bar{\theta }(K_n)-1)\), where \(\bar{\theta }(G)\) is the geometric thickness of a graph G. The geometric thickness of an undirected graph \(G=(V,E)\) is defined as the minimum number k of such that E is the disjoint union of k sets \(E_1 \cup E_2 \cup \cdots \cup E_k\) and there exists a straight-line drawing of G in which no pair of edges in \(E_i\) crosses for any \(i\in \{1,2,\dots ,k\}\). Dillencourt, Eppstein, and Hirschberg [11] proved that the geometric thickness of a complete graph with n vertices is at least \(\lceil (n/5.646) + 0.342 \rceil \) when \(n \ge 12\). Therefore, we obtain the following bounds:

$$ \frac{3\pi }{n}(1+o(1)) \le \mathop {\mathsf {car}}(K_n) \le \frac{5.646\pi }{n}(1+o(1)). $$

This gives rise to the following problem.

Problem 10.2

Determine (the leading term of) the crossing angular resolution of a complete graph with n vertices.

Indeed, the upper bound holds in general: Di Giacomo et al. [8] also proved that

$$\begin{aligned} \mathop {\mathsf {car}}(G) \le \frac{\pi }{\bar{\theta }(G)-1} \end{aligned}$$
(10.3)

for every undirected non-planar graph G. Equation (10.3) has several implications. Among others, we observe that the crossing angular resolution of bounded-degree graphs can be arbitrarily small. To see this, we use the following fact proved by Barát, Matoušek, and Wood [5]: for all \(\varDelta \ge 9\) and \(\varepsilon > 0\), there exists a \(\varDelta \)-regular n-vertex graph H such that \(\bar{\theta }(H) = \varOmega (\sqrt{\varDelta }n^{1/2-4/\varDelta - \varepsilon })\). Their proof is based on a counting argument, and thus non-constructive. Then, by Eq. (10.3), for that graph H

$$\begin{aligned} \mathop {\mathsf {car}}(H) = O(1/\sqrt{\varDelta }n^{1/2-4/\varDelta - \varepsilon }). \end{aligned}$$
(10.4)

On the other hand, this bound only holds when \(\varDelta \ge 9\) and it is not clear if the crossing angular resolution of an undirected graph G can be bounded by a function of the maximum degree \(\varDelta (G)\) when \(\varDelta (G) \le 8\). When \(\varDelta (G) = 3\), this is possible, as we will see in Sect. 10.5. However, the following is still open.

Problem 10.3

Can the crossing angular resolution be bounded by a constant from below if the maximum degree is between 4 and 8?

As one might have already guessed, the crossing angular resolution is closely related to the so-called right-angle crossing drawings of graphs. A straight-line drawing of an undirected graph is a right-angle crossing drawing (or a RAC drawing) if the crossing angular resolution is at least \(\pi /2\). An undirected graph is a right-angle crossing graph (or a RAC graph) if it admits a straight-line RAC drawing.

The concepts of RAC drawings and RAC graphs were first introduced by Didimo, Eades, and Liotta [9]. They proved that every RAC graph with \(n\ge 4\) vertices can have at most \(4n-10\) edges, and this is tight. Argyriou, Bekos, and Symvonis [3] proved that it is NP-hard to decide if a given undirected graph is a RAC graph. This implies that the computation of the crossing angular resolution of a given undirected graph is NP-hard.

Motivated by RAC graphs, Dujmovic, Gudmundsson, Morin, and Wolle [12] studied the large-angle crossing graphs. Let \(\alpha \) be a real number such that \(0<\alpha < \pi /2\). A straight-line drawing of an undirected graph is an \(\alpha \)-angle crossing drawing (or an \(\alpha \)AC drawing) if the crossing angular resolution is at least \(\alpha \). An undirected graph is an \(\alpha \)-angle crossing graph (or an \(\alpha \)AC graph) if it admits a straight-line \(\alpha \)AC drawing. Dujmovic et al. [12] proved that every \(\alpha \)AC graph with \(n \ge 3\) vertices has at most \((\pi /\alpha )(3n-6)\) edges. This implies the following: if an n-vertex graph G has more than \((\pi /\alpha )(3n-6)\) edges, then \(\mathop {\mathsf {car}}(G) \le \alpha \). For example, if the graph G has \(\varTheta (n^2)\) edges, then \(\mathop {\mathsf {car}}(G) = O(1/n)\). Similarly, if we denote the minimum degree of G by \(\delta (G)\), then the number of edges is at least \(\delta (G)n/2\), and consequently

$$\begin{aligned} \mathop {\mathsf {car}}(G) = O(1/\delta (G)) \end{aligned}$$
(10.5)

for every graph G.

So far, we mainly looked at upper bounds for the crossing angular resolution of a graph. Now, we move our attention to lower bounds.

When a graph G is planar, we know there exists a straight-line plane drawing of G by Fáry’s theorem. By definition, the crossing angular resolution of a straight-line plane drawing is \(2\pi \). Therefore, the crossing angular resolution of every planar graph is \(2\pi \).

As we have already seen in this section, for a complete graph \(K_n\), we have \(\mathop {\mathsf {car}}(K_n) = \varTheta (1/n)\). For a complete bipartite graph \(K_{m,n}\), we have \(\mathop {\mathsf {car}}(K_{m,n}) = \varOmega (1/\max \{m,n\})\). This is a consequence from its total angular resolution; see Sect. 10.5.

As a useful method to give a straight-line drawing with large crossing angular resolution, we employ the method of a set of fixed slopes. We used this method for the drawing of the d-dimensional cube with large vertex angular resolution in Sect. 10.3, and we will revisit this method for total angular resolution in Sect. 10.5. Here, we concentrate on bounding crossing angular resolution. For example, if each edge is drawn horizontally or vertically, then the crossing angular resolution will be \(\pi /2\).

As an example, consider a four-dimensional cube \(Q_4\). Refer to Fig. 10.8. It has two disjoint copies of a three-dimensional cube \(Q_3\). Since \(Q_3\) is planar, it has a straight-line plane drawing. Now we squeeze those copies so that they are almost flat, and all edges are almost horizontal. We place each of them beside parallel lines, and complete our drawing of \(Q_4\) by drawing the remaining edges vertically between the two subcubes. Then, the crossing angular resolution of the resulting drawing is \(\pi /2-\varepsilon \), where \(\varepsilon \) depends on the “flatness” of the drawing of \(Q_3\). Therefore, \(\mathop {\mathsf {car}}(Q_4) \ge \pi /2\).

Fig. 10.8
figure 8

The crossing angular resolution of a four-dimensional cube. The left figure shows a straight-line plane drawing of a three-dimensional cube. In the right figure, this drawing of a three-dimensional cube is made almost flat and duplicated. Adding the vertical edges results in a straight-line drawing with crossing angular resolution approximately \(\pi /2\)

The same method shows that \(\mathop {\mathsf {car}}(G)\ge \pi /2\) when G is a three-dimensional grid (Fig. 10.9) and a six-dimensional cube \(Q_6\) (Fig. 10.10 (left)). If we use three slopes \(0, \pi /3, 2\pi /3\), then we can obtain the crossing angular resolution \(\pi /3\). This is illustrated with a nine-dimensional cube \(Q_9\) in Fig. 10.10 (right). In general, the crossing angular resolution of a d-dimensional cube \(Q_{d}\) is at least \(\pi /\lceil d/3 \rceil \), which can be observed by using \(\lceil d/3 \rceil \) slopes. Note that \(Q_{d}\) has dn/2 edges, and thus \(\mathop {\mathsf {car}}(Q_{d}) < 6\pi /d\) by the result on \(\alpha \)-angle crossing drawings mentioned above [12]. This motivates the following problem.

Problem 10.4

Determine the crossing angular resolution of a d-dimensional cube.

Fig. 10.9
figure 9

The crossing angular resolution of a three-dimensional grid is \(\pi /2\). The left figure is a “usual” straight-line drawing, and the right figure is a straight-line drawing with crossing angular resolution approximately \(\pi /2\)

Fig. 10.10
figure 10

The crossing angular resolution of a six-dimensional cube is \(\pi /2\) (left), and the crossing angular resolution of a nine-dimensional cube is at least \(\pi /3\) (right)

Another example was given by Didimo, Kaufmann, Liotta, Okamoto, and Spillner [10]. They studied a leveled drawing of a leveled tree. In a leveled tree, distinct real numbers are associated with the vertices, and in a leveled drawing of a leveled tree, the y-coordinate of each vertex v must be identical to the real number associated to v. Didimo et al. [10] proved that every leveled tree has a straight-line leveled drawing of crossing angular resolution \(\pi /2-\varepsilon \) for every \(\varepsilon >0\). They used the slopes of \(\pi /4\) and \(-\pi /4\) in their drawings. Refer to Fig. 10.11. First, fix an arbitrary vertex as a root. Then, each edge is drawn with the following rule. For an edge \(\{u,v\}\) of the tree, suppose that u is the parent of v. The edge \(\{u,v\}\) is drawn with slope \(\pi /4\) if the y-coordinate of v is larger than the y-coordinate of u; otherwise, the edge \(\{u,v\}\) is drawn with slope \(-\pi /4\). We may need to perturb the vertices a little to avoid degeneracy. The resulting drawing has the crossing angular resolution \(\pi /2-\varepsilon \), where \(\varepsilon > 0\) is an artifact of the perturbation.

Fig. 10.11
figure 11

A leveled drawing of a leveled tree (left), and another leveled drawing of the same leveled tree with crossing angular resolution \(\pi /2-\varepsilon \) (right). The arbitrarily selected root is depicted by white

Recent results on crossing angular resolutions can be found in [6].

10.5 Total Angular Resolution

The total angular resolution was first introduced by Argyriou, Bekos, and Symvonis [4], where the total angular resolution was simply called the total resolution. They proved that \(\mathop {\mathsf {tar}}(K_n) = \varTheta (1/n)\) for a complete graph \(K_n\), and \(\mathop {\mathsf {tar}}(K_{m,n}) = \varTheta (1/\max \{m,n\})\) for a complete bipartite graph \(K_{m,n}\). Their bounds can be observed in the following way.

For upper bounds, by combining the upper bound for the vertex angular resolution in Eq. (10.1) and the upper bound for the crossing angular resolution in Eq. (10.3), we obtain

$$\begin{aligned} \mathop {\mathsf {tar}}(G) = O(\min \{1/\varDelta (G), 1/(\bar{\theta }(G)-1)\}) \end{aligned}$$
(10.6)

for every non-planar graph G. Since \(\varDelta (K_n) = n-1\) and \(\varDelta (K_{m,n})=\max \{m,n\}\), we readily obtain \(\mathop {\mathsf {tar}}(K_n) = O(1/n)\) and \(\mathop {\mathsf {tar}}(K_{m,n}) = O(1/\max \{m,n\})\).

To prove the lower bounds, Argyriou et al. [4] studied particular straight-line drawings of \(K_n\) and \(K_{m,n}\). For \(K_n\), they placed the vertices on the corners of a regular n-gon. For \(K_{m,n}\), they considered a square, and placed the vertices of one partite set on the top side and the vertices of the other partite set on the bottom side, respectively. For concrete constructions, see Fig. 10.12. In the figure, \(K_{4,5}\) is drawn, where the partite set A with four vertices lies on the bottom side and the partite set B with five vertices lies on the top side. On the top side, one vertex of B is placed at the top-left corner of the square, and four rays emanate from that vertex to the bottom side. The angle formed by each consecutive pair of those four rays is equal, and the rightmost ray goes through the bottom-right corner of the square. Then, the four vertices in A are placed at the intersections of those rays and the bottom side. Symmetrically, five rays emanate from the bottom-right vertex of the square to the top side, and the intersections with the top side determine the positions of five vertices in B. Argyriou et al. [4] proved that in this drawing, the total angular resolution is attained by the angle formed by the rightmost edge and the second rightmost edge incident to the vertex at the bottom-left corner of the square.

Fig. 10.12
figure 12

Total angular resolutions of complete graphs and complete bipartite graphs: the construction by Argyriou et al. [4]

The method of a set of fixed slopes can be used to bound the total angular resolution of a graph from below. For example, the drawing produced by Formann et al. [13] for d-dimensional cubes \(Q_d\) proves the total angular resolution of \(Q_d\) is at least \(\pi /d\). Refer to Fig. 10.6. Another example is a leveled drawing of a leveled tree. For the definition, see Sect. 10.4. Didimo et al. [10] constructed a leveled drawing of a leveled tree with total angular resolution \(\pi /\varDelta -\varepsilon \), where \(\varDelta \) is the maximum degree of the tree and \(\varepsilon > 0\) is arbitrary. Refer to Fig. 10.13. In their drawing, we use the slopes in \(\{i\pi /\varDelta +\alpha \mid i\in \{0,1,\dots ,\varDelta -1\}\}\), where \(\alpha \) is any constant such that \(0< \alpha < \pi /\varDelta \). We first fix an arbitrary vertex as root and then consider a proper edge-coloring with \(\varDelta \) colors, which always exists. Then, an edge e is drawn with the ith slope \(i\pi /\varDelta +\alpha \) if and only if e receives the ith color. The drawing can be obtained by traversing the tree from root to leaves. It may happen that a vertex is placed on an edge: in that case, we introduce a tiny perturbation to slide the vertex along the direction parallel to the x-axis. The resulting drawing has the total angular resolution \(\pi /d -\varepsilon \), where \(\varepsilon > 0\) depends on the perturbation.

Fig. 10.13
figure 13

Total angular resolution of a leveled drawing of a leveled tree, studied by Didimo et al. [10]. In this example, the maximum degree \(\varDelta \) is equal to four, and thus the total angular resolution is \(\pi /4-\varepsilon \) for any arbitrary small \(\varepsilon \). The left figure shows a given leveled tree with a proper edge coloring with \(\varDelta = 4\) colors. The right figure shows the construction of a leveled drawing with total angular resolution \(\pi /4\). You may observe that the edges with the same color share the same slope

The method of a set of fixed slopes can be used to draw an undirected graph with maximum degree three. To this end, we use a result by Mukkamala and Pálvölgyi [22]. They proved that an undirected graph with maximum degree three has a straight-line drawing that only uses the slopes in \(\{0, \pi /4, \pi /2, 3\pi /4\}\). Examples are given in Fig. 10.14. Therefore, their drawing readily gives a straight-line drawing of total angular resolution \(\pi /4\). This bound is tight as a complete graph with four vertices shows; recall Fig. 10.1.

Fig. 10.14
figure 14

Total angular resolutions of graphs of maximum degree three. Since they can be drawn only with slopes of \(0, \pi /4, \pi /2, 3\pi /4\), the total angular resolution is at least \(\pi /4\). The top row shows the Frucht graph, and the bottom row shows the second Blanuša snark. In the right figures, only the four slopes are used

On the other hand, the total angular resolution cannot be bounded by a constant for bounded-degree graphs because the crossing angular resolution cannot as we saw in the previous section. As with the crossing angular resolution, we do not know if this is the case already when the maximum degree is 4, 5, 6, 7, or 8.

Problem 10.5

Can the total angular resolution be bounded by a constant from below if the maximum degree is between 4 and 8?

Determining the total angular resolution of a given graph is NP-hard. As it was pointed out in Sect. 10.3, Formann et al. [13] proved that deciding if a given graph of maximum degree four has a straight-line drawing of vertex angular resolution \(\pi /2\) is NP-hard. Their reduction indeed proves that deciding if a given graph of maximum degree four has a straight-line drawing of total angular resolution \(\pi /2\) is NP-hard.

In Sect. 10.2, we saw a few examples of graphs with their total angular resolutions. Here, we give proofs of the correctness. First, consider the complete graph \(K_4\) with four vertices. Then, the convex hull boundary of a straight-line drawing of \(K_4\) contains at most four vertices. Therefore, the convex hull must have at least one vertex of angle at most \(\pi /2\). Since three edges of the graph are incident to that vertex, the vertex angular resolution must be at most \(\pi /4\), which implies that the total angular resolution must be at most \(\pi /4\), too.

For the three-dimensional cube \(Q_3\) and the Petersen graph, we proceed as follows. As a common property of those two examples, we use the fact that those two graphs are 3-regular (i.e., every vertex has degree three). Now, for the sake of contradiction, suppose that the total angular resolution is more than \(\pi /3\). Then, observe that the convex hull boundary of a straight-line drawing of those graphs must contain at least seven vertices. To see this, suppose that the convex hull boundary contains at most six vertices. Then, one of the convex hull vertices has an angle of less than \(2\pi /3\). Since that vertex is incident to three edges, it should create an angle smaller than \(\pi /3\).

Consider a straight-line drawing D of those graphs of total angular resolution more than \(\pi /3\). By the above observation, the convex hull boundary of D has at least seven vertices. Let \(\tilde{D}\) be the planarization of D in the sense that we insert vertices at all crossings so that the \(\tilde{D}\) is a straight-line plane drawing. See Fig. 10.15 for the construction. Let n be the number of vertices of D, and let c be the number of crossings in D, which is equal to the number of newly inserted vertices in \(\tilde{D}\). Let \(V(\tilde{D})\), \(E(\tilde{D})\) and \(F(\tilde{D})\) be the sets of vertices, edges and faces of \(\tilde{D}\), respectively. Then, \(|V(\tilde{D})|=n+c\) and \(|E(\tilde{D})|\ge \frac{3}{2}n+2c\). Since we have assumed that the total angular resolution of D is more than \(\pi /3\), the drawing \(\tilde{D}\) has no triangle face. Therefore, by counting the number of pairs of incident edges and faces in two ways, we obtain \(2|E(\tilde{D})| \ge 4(|F(\tilde{D})| + 7 = 4|F(\tilde{D})| + 3\), where we use the assumption that the convex hull boundary contains at least seven vertices. Then, Euler’s formula tells us that \(|V(\tilde{D})|-|E(\tilde{D})|+|F(\tilde{D})|=2\), which implies that

$$\begin{aligned} 2= & {} |V(\tilde{D})|-|E(\tilde{D})|+|F(\tilde{D})|\\\le & {} |V(\tilde{D})| - |E(\tilde{D})| + \frac{1}{2}|E(\tilde{D})| - \frac{3}{4}\\= & {} |V(\tilde{D})| - \frac{1}{2}|E(\tilde{D})| - \frac{3}{4}\\\le & {} (n+c) - \frac{1}{2}\left( \frac{3}{2}n+2c\right) - \frac{3}{4}\\= & {} \frac{1}{4} n - \frac{3}{4}. \end{aligned}$$

Therefore, \(n \ge 11\). This leads to a contradiction since \(Q_3\) has eight vertices and the Petersen graph has ten vertices.

Recent results on total angular resolutions can be found in [1].

Fig. 10.15
figure 15

A straight-line drawing with crossings (left) and its planarization (right). In the right drawing, white vertices are newly inserted at the crossings of the left drawing

10.6 Concluding Remarks

From the examples in this chapter, we may observe that there are trade-offs between vertex angular resolution and crossing angular resolution. Total angular resolution tries to balance those two aspects of esthetics in graph drawing. Recently, several authors have started to study the trade-offs between several esthetic criteria in graph drawing, such as area, edge lengths, the number of crossings [2, 7, 17, 20]. This will lead to studying the aspect of multi-criteria optimization in graph drawing and information visualization, which is another open area to be explored further.