Last chance! 50% off unlimited learning
Sale ends in
These functions generate trees by splitting randomly the edges
(rtree
) or randomly clustering the tips (rcoal
).
rtree
generates general trees, and rcoal
generates
coalescent trees. The algorithms are described in Paradis (2012).
rtree(n, rooted = TRUE, tip.label = NULL, br = runif, ...)
rcoal(n, tip.label = NULL, br = "coalescent", ...)
rmtree(N, n, rooted = TRUE, tip.label = NULL, br = runif, ...)
an integer giving the number of tips in the tree.
a logical indicating whether the tree should be rooted (the default).
a character vector giving the tip labels; if not specified, the tips "t1", "t2", ..., are given.
one of the following: (i) an R function used to generate the
branch lengths (rtree
; use NULL
to simulate only a
topology), or the coalescence times (rcoal
); (ii) a character
to simulate a genuine coalescent tree for rcoal
(the
default); or (iii) a numeric vector for the branch lengths or the
coalescence times.
further argument(s) to be passed to br
.
an integer giving the number of trees to generate.
An object of class "phylo"
or of class "multiPhylo"
in
the case of rmtree
.
The trees generated are bifurcating. If rooted = FALSE
in
(rtree
), the tree is trifurcating at its root.
The default function to generate branch lengths in rtree
is
runif
. If further arguments are passed to br
, they need
to be tagged (e.g., min = 0, max = 10
).
rmtree
calls successively rtree
and set the class of
the returned object appropriately.
Paradis, E. (2012) Analysis of Phylogenetics and Evolution with R (Second Edition). New York: Springer.
# NOT RUN {
layout(matrix(1:9, 3, 3))
### Nine random trees:
for (i in 1:9) plot(rtree(20))
### Nine random cladograms:
for (i in 1:9) plot(rtree(20, FALSE), type = "c")
### generate 4 random trees of bird orders:
data(bird.orders)
layout(matrix(1:4, 2, 2))
for (i in 1:4)
plot(rcoal(23, tip.label = bird.orders$tip.label), no.margin = TRUE)
layout(1)
par(mar = c(5, 4, 4, 2))
# }
Run the code above in your browser using DataLab