Use this if you are using igraph from R
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.
layout_with_fr,
plot.igraph, tkplot
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)