1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/layout.R
\name{layout_with_gem}
\alias{layout_with_gem}
\alias{with_gem}
\title{The GEM 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{
\item{graph}{The input graph. Edge directions are ignored.}
\item{coords}{If not \code{NULL}, then the starting coordinates should be
given here, in a two or three column matrix, depending on the \code{dim}
argument.}
\item{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.}
\item{temp.max}{The maximum allowed local temperature. A reasonable default
is the number of vertices.}
\item{temp.min}{The global temperature at which the algorithm terminates
(even before reaching \code{maxiter} iterations). A reasonable default is
1/10.}
\item{temp.init}{Initial local temperature of all vertices. A reasonable
default is the square root of the number of vertices.}
\item{...}{Passed to \code{layout_with_gem()}.}
}
\value{
A numeric matrix with two columns, and as many rows as the number of
vertices.
}
\description{
Place vertices on the plane using the GEM force-directed layout algorithm.
}
\details{
See the referenced paper below for the details of the algorithm.
}
\examples{
set.seed(42)
g <- make_ring(10)
plot(g, layout = layout_with_gem)
}
\references{
Arne Frick, Andreas Ludwig, Heiko Mehldau: A Fast Adaptive
Layout Algorithm for Undirected Graphs, \emph{Proc. Graph Drawing 1994},
LNCS 894, pp. 388-403, 1995.
}
\seealso{
\code{\link[=layout_with_fr]{layout_with_fr()}},
\code{\link[=plot.igraph]{plot.igraph()}}, \code{\link[=tkplot]{tkplot()}}
Other graph layouts:
\code{\link{add_layout_}()},
\code{\link{component_wise}()},
\code{\link{layout_}()},
\code{\link{layout_as_bipartite}()},
\code{\link{layout_as_star}()},
\code{\link{layout_as_tree}()},
\code{\link{layout_in_circle}()},
\code{\link{layout_nicely}()},
\code{\link{layout_on_grid}()},
\code{\link{layout_on_sphere}()},
\code{\link{layout_randomly}()},
\code{\link{layout_with_dh}()},
\code{\link{layout_with_fr}()},
\code{\link{layout_with_graphopt}()},
\code{\link{layout_with_kk}()},
\code{\link{layout_with_lgl}()},
\code{\link{layout_with_mds}()},
\code{\link{layout_with_sugiyama}()},
\code{\link{merge_coords}()},
\code{\link{norm_coords}()},
\code{\link{normalize}()}
}
\author{
Gabor Csardi \email{csardi.gabor@gmail.com}
}
\concept{graph layouts}
\keyword{graphs}
|