Generate Random Trees
These functions generate trees by splitting randomly the edges
(rtree and rtopology) or randomly clustering the tips
(rcoal). rtree and rtopology generate general
trees, and rcoal generates coalescent trees. The algorithms are
described in Paradis (2012) and in a vignette in this package.
rtree(n, rooted = TRUE, tip.label = NULL, br = runif, equiprob = FALSE, ...)
rtopology(n, rooted = FALSE, tip.label = NULL, br = runif, ...)
rcoal(n, tip.label = NULL, br = "coalescent", ...)
rmtree(N, n, rooted = TRUE, tip.label = NULL, br = runif,
equiprob = FALSE, ...)
rmtopology(N, n, rooted = FALSE, tip.label = NULL, br = runif, ...)n |
an integer giving the number of tips in the tree. |
rooted |
a logical indicating whether the tree should be rooted (the default). |
tip.label |
a character vector giving the tip labels; if not specified, the tips "t1", "t2", ..., are given. |
br |
one of the following: (i) an R function used to generate the
branch lengths ( |
equiprob |
(new since ape 5.4-1) a logical specifying
whether topologies are generated in equal frequencies. If,
|
... |
further argument(s) to be passed to |
N |
an integer giving the number of trees to generate. |
The trees generated are bifurcating. If rooted = FALSE in
(rtree), the tree is trifurcating at its root.
The option equiprob = TRUE generates unlabelled
topologies in equal frequencies. This is more complicated for the
labelled topologies (see the vignette “RandomTopologies”).
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.
An object of class "phylo" or of class "multiPhylo" in
the case of rmtree or rmtopology.
Emmanuel Paradis
Paradis, E. (2012) Analysis of Phylogenetics and Evolution with R (Second Edition). New York: Springer.
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))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.