Circular layout

Summary

In graph drawing, a circular layout is a style of drawing that places the vertices of a graph on a circle, often evenly spaced so that they form the vertices of a regular polygon.

Circular layout of the Chvátal graph
Circular layout of a state diagram for the border gateway protocol
Incremental construction of a circular layout for the Barabási–Albert model of social network formation

Applications edit

Circular layouts are a good fit for communications network topologies such as star or ring networks,[1] and for the cyclic parts of metabolic networks.[2] For graphs with a known Hamiltonian cycle, a circular layout allows the cycle to be depicted as the circle, and in this way circular layouts form the basis of the LCF notation for Hamiltonian cubic graphs.[3]

A circular layout may be used on its own for an entire graph drawing, but it also may be used as the layout for smaller clusters of vertices within a larger graph drawing, such as its biconnected components,[4] clusters of genes in a gene interaction graph,[5] or natural subgroups within a social network.[6] If multiple vertex circles are used in this way, other methods such as force-directed graph drawing may be used to arrange the clusters.[7]

One advantage of a circular layout in some of these applications, such as bioinformatics or social network visualization, is its neutrality:[8] by placing all vertices at equal distances from each other and from the center of the drawing, none is given a privileged position, countering the tendency of viewers to perceive more centrally located nodes as being more important.[9]

Edge style edit

The edges of the drawing may be depicted as chords of the circle,[10] as circular arcs[11] (possibly perpendicular to the vertex circle, so that the edges model lines of the Poincaré disk model of hyperbolic geometry), or as other types of curve.[12]

The visual distinction between the inside and the outside of the vertex circle in a circular layout may be used to separate two different styles of edge drawing. For instance, a circular drawing algorithm of Gansner & Koren (2007) uses edge bundling within the circle, together with some edges that are not bundled, drawn outside the circle.[12]

For circular layouts of regular graphs, with edges drawn both inside and outside as circular arcs, the angle of incidence of one of these arcs with the vertex circle is the same at both ends of the arc, a property that simplifies the optimization of the angular resolution of the drawing.[11]

Number of crossings edit

Several authors have studied the problem of finding a permutation of the vertices of a circular layout that minimizes the number of edge crossings when all edges are drawn inside the vertex circle. This number of crossings is zero only for outerplanar graphs.[13] For other graphs, it may be optimized or reduced separately for each biconnected component of the graph before combining the solutions, as these components may be drawn so that they do not interact.[14] In general, minimizing the number of crossings is NP-complete.[15]

Shahrokhi et al. (1995) described an approximation algorithm based on balanced cuts or edge separators, subsets of few edges whose removal disconnects the given graph into two subgraphs with approximately equal numbers of vertices. After finding an approximate cut, their algorithm arranges the two subgraphs on each side of the cut recursively, without considering the additional crossings formed by the edges that cross the cut. They prove that the number of crossings occurring in the resulting layout, on a graph   with   vertices, is

 
where   is the optimal number of crossings and   is the approximation ratio of the balanced cut algorithm used by this layout method.[16] Their work cites a paper by Fan Chung and Shing-Tung Yau from 1994 that claimed  , but this was later found to have an erroneous proof.[17] Instead, the best approximation known for the balanced cut problem has  ,[18] giving this circular layout algorithm an approximation ratio of   on graphs that have a large number of crossings relative to their vertex degrees.

Heuristic methods for reducing the crossing complexity have also been devised, based e.g. on a careful vertex insertion order and on local optimization.[19] A circular layout may also be used to maximize the number of crossings. In particular, choosing a random permutation for the vertices causes each possible crossing to occur with probability 1/3, so the expected number of crossings is within a factor of three of the maximum number of crossings among all possible layouts. Derandomizing this method gives a deterministic approximation algorithm with approximation ratio three.[20]

Other optimization criteria edit

Along with crossings, circular versions of problems of optimizing the lengths of edges in a circular layout, the angular resolution of the crossings, or the cutwidth (the maximum number of edges that connects one arc of the circle to the opposite arc) have also been considered,[21] but many of these problems are NP-complete.[22]

See also edit

External links edit

  • Circular layout engine of Graphviz

Notes edit

References edit

  • Arora, Sanjeev; Rao, Satish; Vazirani, Umesh (2009), "Expander flows, geometric embeddings and graph partitioning" (PDF), Journal of the ACM, 56 (2): A5:1–A5:37, doi:10.1145/1502793.1502794, MR 2535878, S2CID 52151977
  • Baur, Michael; Brandes, Ulrik (2005), "Crossing reduction in circular layouts", in van Leeuwen, Jan (ed.), Graph-Theoretic Concepts in Computer Science: 30th International Workshop, WG 2004, Bad Honnef, Germany, June 21-23, 2004, Revised Papers, Lecture Notes in Computer Science, vol. 3353, Springer, pp. 332–343, doi:10.1007/978-3-540-30559-0_28.
  • Becker, Moritz Y.; Rojas, Isabel (2001), "A graph layout algorithm for drawing metabolic pathways", Bioinformatics, 17 (5): 461–467, doi:10.1093/bioinformatics/17.5.461, PMID 11331241.
  • Dehkordi, Hooman Reisi; Nguyen, Quan; Eades, Peter; Hong, Seok-Hee (2013), "Circular graph drawings with large crossing angles", Algorithms and Computation: 7th International Workshop, WALCOM 2013, Kharagpur, India, February 14-16, 2013, Proceedings, Lecture Notes in Computer Science, vol. 7748, Springer, pp. 298–309, doi:10.1007/978-3-642-36065-7_28.
  • Doğrusöz, Uğur; Belviranli, M.; Dilek, A. (2012), "CiSE: A circular spring embedder layout algorithm", IEEE Transactions on Visualization and Computer Graphics, 19 (6): 953–966, doi:10.1109/TVCG.2012.178, hdl:11693/21006, PMID 23559509, S2CID 14365664.
  • Doğrusöz, Uğur; Madden, Brendan; Madden, Patrick (1997), "Circular layout in the Graph Layout toolkit", Graph Drawing: Symposium on Graph Drawing, GD '96, Berkeley, California, USA, September 18–20, 1996, Proceedings, Lecture Notes in Computer Science, vol. 1190, Springer, pp. 92–100, doi:10.1007/3-540-62495-3_40.
  • Duncan, Christian A.; Eppstein, David; Goodrich, Michael T.; Kobourov, Stephen G.; Nöllenburg, Martin (2012), "Lombardi drawings of graphs", Journal of Graph Algorithms and Applications, 16 (1): 85–108, arXiv:1009.0579, doi:10.7155/jgaa.00251, S2CID 5000926.
  • Gansner, Emden R.; Koren, Yehuda (2007), Graph Drawing: 14th International Symposium, GD 2006, Karlsruhe, Germany, September 18-20, 2006, Revised Papers, Lecture Notes in Computer Science, vol. 4372, Springer, pp. 386–398, doi:10.1007/978-3-540-70904-6_37.
  • He, H.; Sýkora, Ondrej (2004), "New circular drawing algorithms", Proceedings of the Workshop on Information Technologies – Applications and Theory (ITAT), Slovakia, September 15-19.
  • Huang, Weidong; Hong, Seok-Hee; Eades, Peter (2007), "Effects of sociogram drawing conventions and edge crossings in social network visualization", Journal of Graph Algorithms and Applications, 11 (2): 397–429, doi:10.7155/jgaa.00152.
  • Iragne, Florian; Nikolski, Macha; Mathieu, Bertrand; Auber, David; Sherman, David (2005), "ProViz: protein interaction visualization and exploration", Bioinformatics, 21 (2): 272–274, doi:10.1093/bioinformatics/bth494, PMID 15347570.
  • Krebs, Valdis (1996), "Visualizing human networks" (PDF), Release 1.0: Esther Dyson's Monthly Report, 2–96.
  • Mäkinen, Erkki (1988), "On circular layouts", International Journal of Computer Mathematics, 24 (1): 29–37, doi:10.1080/00207168808803629.
  • Masuda, S.; Kashiwabara, T.; Nakajima, K.; Fujisawa, T. (1987), "On the NP-completeness of a computer network layout problem", Proceedings of the IEEE International Symposium on Circuits and Systems, pp. 292–295. As cited by Baur & Brandes (2005).
  • Nguyen, Quan; Eades, Peter; Hong, Seok-Hee; Huang, Weidong (2011), "Large crossing angles in circular layouts", Graph Drawing: 18th International Symposium, GD 2010, Konstanz, Germany, September 21-24, 2010, Revised Selected Papers, Lecture Notes in Computer Science, vol. 6502, Springer, pp. 397–399, doi:10.1007/978-3-642-18469-7_40.
  • Pisanski, Tomaž; Servatius, Brigitte (2013), "2.3.2 Cubic graphs and LCF notation", Configurations from a Graphical Viewpoint, Springer, p. 32, ISBN 9780817683641.
  • Shahrokhi, Farhad; Sýkora, Ondrej; Székely, László A.; Vrt'o, Imrich (1995), "Book embeddings and crossing numbers", Graph-Theoretic Concepts in Computer Science: 20th International Workshop, WG '94, Herrsching, Germany, June 16–18, 1994, Proceedings, Lecture Notes in Computer Science, vol. 903, Springer, pp. 256–268, doi:10.1007/3-540-59071-4_53.
  • Shmoys, David B. (1997), "Cut problems and their application to divide-and-conquer" (PDF), in Hochbaum, Dorit (ed.), Approximation Algorithms for NP-hard Problems, PWS Publishing, pp. 192–235
  • Six, Janet M.; Tollis, Ioannis G. (1999a), "Circular drawings of biconnected graphs", Algorithm Engineering and Experimentation: International Workshop ALENEX'99, Baltimore, MD, USA, January 15–16, 1999, Selected Papers, Lecture Notes in Computer Science, vol. 1619, Springer, pp. 57–73, doi:10.1007/3-540-48518-X_4.
  • Six, Janet M.; Tollis, Ioannis G. (1999b), "A framework for circular drawings of networks", Graph Drawing: 7th International Symposium, GD'99, Štiřín Castle, Czech Republic, September 15–19, 1999, Proceedings, Lecture Notes in Computer Science, vol. 1731, Springer, pp. 107–116, doi:10.1007/3-540-46648-7_11.
  • Symeonidis, Alkiviadis; Tollis, Ioannis G. (2004), "Visualization of biological information with circular drawings", Biological and Medical Data Analysis: 5th International Symposium, ISBMDA 2004, Barcelona, Spain, November 18-19, 2004, Proceedings, Lecture Notes in Computer Science, vol. 3337, Springer, pp. 468–478, doi:10.1007/978-3-540-30547-7_47.
  • Verbitsky, Oleg (2008), "On the obfuscation complexity of planar graphs", Theoretical Computer Science, 396 (1–3): 294–300, arXiv:0705.3748, doi:10.1016/j.tcs.2008.02.032, MR 2412266, S2CID 5948167.