The GEM layout algorithm
Place vertices on the plane using the GEM force-directed layout algorithm.
layout_with_gem( graph, coords = NULL, maxiter = 40 * vcount(graph)^2, temp.max = vcount(graph), temp.min = 1/10, temp.init = sqrt(vcount(graph)) ) with_gem(...)
graph |
The input graph. Edge directions are ignored. |
coords |
If not |
maxiter |
The maximum number of iterations to perform. Updating a single vertex counts as an iteration. A reasonable default is 40 * n * n, where n is the number of vertices. The original paper suggests 4 * n * n, but this usually only works if the other parameters are set up carefully. |
temp.max |
The maximum allowed local temperature. A reasonable default is the number of vertices. |
temp.min |
The global temperature at which the algorithm terminates
(even before reaching |
temp.init |
Initial local temperature of all vertices. A reasonable default is the square root of the number of vertices. |
... |
Passed to |
See the referenced paper below for the details of the algorithm.
A numeric matrix with two columns, and as many rows as the number of vertices.
Gabor Csardi csardi.gabor@gmail.com
Arne Frick, Andreas Ludwig, Heiko Mehldau: A Fast Adaptive Layout Algorithm for Undirected Graphs, Proc. Graph Drawing 1994, LNCS 894, pp. 388-403, 1995.
Other graph layouts:
add_layout_()
,
component_wise()
,
layout_as_bipartite()
,
layout_as_star()
,
layout_as_tree()
,
layout_in_circle()
,
layout_nicely()
,
layout_on_grid()
,
layout_on_sphere()
,
layout_randomly()
,
layout_with_dh()
,
layout_with_fr()
,
layout_with_graphopt()
,
layout_with_kk()
,
layout_with_lgl()
,
layout_with_mds()
,
layout_with_sugiyama()
,
layout_()
,
merge_coords()
,
norm_coords()
,
normalize()
set.seed(42) g <- make_ring(10) plot(g, layout=layout_with_gem)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.