Curvilinear Graph Drawing Using the Force-Directed Method

  • Benjamin Finkel
  • Roberto Tamassia
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3383)


We present a method for modifying a force-directed graph drawing algorithm into an algorithm for drawing graphs with curved lines. Our method is based on embedding control points as dummy vertices so that edges can be drawn as splines. Our experiments show that our method yields aesthetically pleasing curvilinear drawing with improved angular resolution. Applying our method to the GEM algorithm on the test suite of the “Rome Graphs” resulted in an average improvement of 46% in angular resolution and of almost 6% in edge crossings.


Planar Graph Angular Resolution Graph Draw Layout Algorithm Edge Crossing 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    JDSL: the data structures library in Java,
  2. 2.
  3. 3.
    Brandenburg, F.J., Himsolt, M., Rohrer, C.: An experimental comparison of force-directed and randomized graph drawing algorithms. In: Brandenburg, F.J. (ed.) GD 1995. LNCS, vol. 1027, pp. 76–87. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  4. 4.
    Brandes, U., Shubina, G., Tamassia, R.: Improving angular resolution in visualizations of geographic networks. In: Proc. Joint Eurographics — IEEE TCVG Symposium on Visualization (VisSym 2000), pp. 23–32 (2000)Google Scholar
  5. 5.
    Brandes, U., Shubina, G., Tamassia, R., Wagner, D.: Fast layout methods for timetable graphs. In: Marks, J. (ed.) GD 2000. LNCS, vol. 1984, pp. 127–138. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  6. 6.
    Brandes, U., Wagner, D.: Using graph layout to visualize train interconnection data. In: Whitesides, S.H. (ed.) GD 1998. LNCS, vol. 1547, pp. 44–56. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  7. 7.
    C. C. Cheng, C. A. Duncan, M. T. Goodrich, and S. G. Kobourov. Drawing planar graphs with circular arcs. In Graph Drawing (Proc. GD 1999), LNCS 1731, pp. 117–126, 1999. CrossRefGoogle Scholar
  8. 8.
    Davidson, R., Harel, D.: Drawing graphics nicely using simulated annealing. ACM Trans. Graph. 15(4), 301–331 (1996)CrossRefGoogle Scholar
  9. 9.
    Dobkin, D.P., Gansner, E.R., Koutsofios, E., North, S.C.: Implementing a general-purpose edge router. In: DiBattista, G. (ed.) GD 1997. LNCS, vol. 1353, pp. 262–271. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  10. 10.
    Eades, P.: A heuristic for graph drawing. Congr. Numer. 42, 149–160 (1984)MathSciNetGoogle Scholar
  11. 11.
    Frick, A., Ludwig, A., Mehldau, H.: A fast adaptive layout algorithm for undirected graphs. In: Tamassia, R., Tollis, I.G. (eds.) GD 1994. LNCS, vol. 894, pp. 388–403. Springer, Heidelberg (1995)Google Scholar
  12. 12.
    Fruchterman, T., Reingold, E.: Graph drawing by force-directed placement. Softw. – Pract. Exp. 21(11), 1129–1164 (1991)CrossRefGoogle Scholar
  13. 13.
    Gajer, P., Goodrich, M.T., Kobourov, S.G.: A fast multi-dimensional algorithm for drawing large graphs. In: Marks, J. (ed.) GD 2000. LNCS, vol. 1984, pp. 211–221. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  14. 14.
    Gansner, E.R., Koutsofios, E., North, S.C., Vo, K.P.: A technique for drawing directed graphs. IEEE Trans. Softw. Eng. 19, 214–230 (1993)CrossRefGoogle Scholar
  15. 15.
    Gansner, E.R., North, S.C., Vo, K.P.: DAG – A program that draws directed graphs. Softw. – Pract. Exp. 18(11), 1047–1062 (1988)zbMATHCrossRefGoogle Scholar
  16. 16.
    Garg, A., Tamassia, R.: GIOTTO3D: A system for visualizing hierarchical structures in 3D. In: North, S.C. (ed.) GD 1996. LNCS, vol. 1190, pp. 193–200. Springer, Heidelberg (1997)Google Scholar
  17. 17.
    Goodrich, M.T., Wagner, C.G.: A framework for drawing planar graphs with curves and polylines. In: Whitesides, S.H. (ed.) GD 1998. LNCS, vol. 1547, pp. 153–166. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  18. 18.
    Gutwenger, C., Mutzel, P.: Planar polyline drawings with good angular resolution. In: Whitesides, S.H. (ed.) GD 1998. LNCS, vol. 1547, pp. 167–182. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  19. 19.
    Harel, D., Koren, Y.: Graph drawing by high-dimensional embedding. In: Goodrich, M.T., Kobourov, S.G. (eds.) GD 2002. LNCS, vol. 2528, pp. 207–219. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  20. 20.
    Kamada, T., Kawai, S.: An algorithm for drawing general undirected graphs. Inform. Process. Lett. 31, 7–15 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  21. 21.
    Munzner, T., Hoffman, E., Claffy, K., Fenner, B.: Visualizing the global topology of the MBone. In: Proc. IEEE Symp. on Information Visualization, pp. 85–92 (1996)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Benjamin Finkel
    • 1
  • Roberto Tamassia
    • 2
  1. 1.MIT Lincoln Laboratory 
  2. 2.Brown University 

Personalised recommendations