layout_with_gem: The GEM layout algorithm In igraph: Network Analysis and Visualization

 layout_with_gem 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 = max(vcount(graph), 1),
temp.min = 1/10,
temp.init = sqrt(max(vcount(graph), 1))
)

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)

``````

igraph documentation built on Aug. 10, 2023, 9:08 a.m.