layout_with_kk {igraph} | R Documentation |
The Kamada-Kawai layout algorithm
Description
Place the vertices on the plane, or in 3D space, based on a physical model of springs.
Usage
layout_with_kk(
graph,
coords = NULL,
dim = 2,
maxiter = 50 * vcount(graph),
epsilon = 0,
kkconst = max(vcount(graph), 1),
weights = NULL,
minx = NULL,
maxx = NULL,
miny = NULL,
maxy = NULL,
minz = NULL,
maxz = NULL,
niter,
sigma,
initemp,
coolexp,
start
)
with_kk(...)
Arguments
graph |
The input graph. Edge directions are ignored. |
coords |
If not |
dim |
Integer scalar, 2 or 3, the dimension of the layout. Two dimensional layouts are places on a plane, three dimensional ones in the 3d space. |
maxiter |
The maximum number of iterations to perform. The algorithm
might terminate earlier, see the |
epsilon |
Numeric scalar, the algorithm terminates, if the maximal
delta is less than this. (See the reference below for what delta means.) If
you set this to zero, then the function always performs |
kkconst |
Numeric scalar, the Kamada-Kawai vertex attraction constant. Typical (and default) value is the number of vertices. |
weights |
Edge weights, larger values will result longer edges.
Note that this is opposite to |
minx |
If not |
maxx |
Similar to |
miny |
Similar to |
maxy |
Similar to |
minz |
Similar to |
maxz |
Similar to |
niter , sigma , initemp , coolexp |
These arguments are not supported from igraph version 0.8.0 and are ignored (with a warning). |
start |
Deprecated synonym for |
... |
Passed to |
Details
See the referenced paper below for the details of the algorithm.
This function was rewritten from scratch in igraph version 0.8.0 and it follows truthfully the original publication by Kamada and Kawai now.
Value
A numeric matrix with two (dim=2) or three (dim=3) columns, and as many rows as the number of vertices, the x, y and potentially z coordinates of the vertices.
Author(s)
Gabor Csardi csardi.gabor@gmail.com
References
Kamada, T. and Kawai, S.: An Algorithm for Drawing General Undirected Graphs. Information Processing Letters, 31/1, 7–15, 1989.
See Also
layout_with_drl()
, plot.igraph()
,
tkplot()
Other graph layouts:
add_layout_()
,
component_wise()
,
layout_()
,
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_gem()
,
layout_with_graphopt()
,
layout_with_lgl()
,
layout_with_mds()
,
layout_with_sugiyama()
,
merge_coords()
,
norm_coords()
,
normalize()
Examples
g <- make_ring(10)
E(g)$weight <- rep(1:2, length.out = ecount(g))
plot(g, layout = layout_with_kk, edge.label = E(g)$weight)