# R igraph manual pages

Use this if you are using igraph from R

 layout_with_gem {igraph} R Documentation

## 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)

Gabor Csardi csardi.gabor@gmail.com

### 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.

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

### Examples


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



[Package igraph version 1.3.4 Index]