Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Force-directed graph drawing
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Forces== Force-directed graph drawing algorithms assign forces among the set of edges and the set of nodes of a [[graph drawing]]. Typically, [[spring (device)|spring]]-like attractive forces based on [[Hooke's law]] are used to attract pairs of endpoints of the graph's edges towards each other, while simultaneously repulsive forces like those of [[electric charge|electrically charged]] particles based on [[Coulomb's law]] are used to separate all pairs of nodes. In [[Mechanical equilibrium|equilibrium states]] for this system of forces, the edges tend to have uniform length (because of the spring forces), and nodes that are not connected by an edge tend to be drawn further apart (because of the electrical repulsion). Edge attraction and vertex repulsion forces may be defined using functions that are not based on the physical behavior of springs and particles; for instance, some force-directed systems use springs whose attractive force is logarithmic rather than linear. An alternative model considers a spring-like force for every pair of nodes <math>(i,j)</math> where the ideal length <math>\delta_{ij}</math> of each spring is proportional to the graph-theoretic distance between nodes ''i'' and ''j'', without using a separate repulsive force. Minimizing the difference (usually the squared difference) between [[euclidean distance|Euclidean]] and ideal distances between nodes is then equivalent to a metric [[multidimensional scaling]] problem. A force-directed graph can involve forces other than mechanical springs and electrical repulsion. A force analogous to gravity may be used to pull vertices towards a fixed point of the drawing space; this may be used to pull together different [[Connected component (graph theory)|connected component]]s of a disconnected graph, which would otherwise tend to fly apart from each other because of the repulsive forces, and to draw nodes with greater [[centrality]] to more central positions in the drawing;<ref>{{citation|contribution=Force-directed graph drawing using social gravity and scaling|first1=M. J.|last1=Bannister|first2=D.|last2=Eppstein|author2-link=David Eppstein|first3=M. T.|last3=Goodrich|author3-link=Michael T. Goodrich|first4=L.|last4=Trott|arxiv=1209.0748|title=Proc. 20th Int. Symp. Graph Drawing|year=2012|bibcode=2012arXiv1209.0748B}}.</ref> it may also affect the vertex spacing within a single component. Analogues of [[magnetic field]]s may be used for directed graphs. Repulsive forces may be placed on edges as well as on nodes in order to avoid overlap or near-overlap in the final drawing. In drawings with curved edges such as [[circular arc]]s or [[spline curve]]s, forces may also be placed on the control points of these curves, for instance to improve their [[Angular resolution (graph drawing)|angular resolution]].<ref>{{citation|first1=R.|last1=Chernobelskiy|first2=K.|last2=Cunningham|first3=M. T.|last3=Goodrich|author3-link=Michael T. Goodrich|first4=S. G.|last4=Kobourov|first5=L.|last5=Trott|contribution=Force-directed Lombardi-style graph drawing|title=Proc. 19th Symposium on Graph Drawing|pages=78β90|year=2011|url=http://www.cs.arizona.edu/~kobourov/fdl.pdf}}.</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)