Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

layout_with_gem

The GEM layout algorithm


Description

Place vertices on the plane using the GEM force-directed layout algorithm.

Usage

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(...)

Arguments

graph

The input graph. Edge directions are ignored.

coords

If not NULL, then the starting coordinates should be given here, in a two or three column matrix, depending on the dim argument.

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 maxiter iterations). A reasonable default is 1/10.

temp.init

Initial local temperature of all vertices. A reasonable default is the square root of the number of vertices.

...

Passed to layout_with_gem.

Details

See the referenced paper below for the details of the algorithm.

Value

A numeric matrix with two columns, and as many rows as the number of vertices.

Author(s)

References

Arne Frick, Andreas Ludwig, Heiko Mehldau: A Fast Adaptive Layout Algorithm for Undirected Graphs, Proc. Graph Drawing 1994, LNCS 894, pp. 388-403, 1995.

See Also

Examples

set.seed(42)
g <- make_ring(10)
plot(g, layout=layout_with_gem)

igraph

Network Analysis and Visualization

v1.2.10
GPL (>= 2)
Authors
See AUTHORS file.
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.