ts_phylo {slendr} | R Documentation |
Convert a tree in the tree sequence to an object of the class phylo
Description
Convert a tree in the tree sequence to an object of the class phylo
Usage
ts_phylo(
ts,
i,
mode = c("index", "position"),
labels = c("tskit", "pop"),
quiet = FALSE
)
Arguments
ts |
Tree sequence object of the class |
i |
Position of the tree in the tree sequence. If |
mode |
How should the |
labels |
What should be stored as node labels in the final |
quiet |
Should ape's internal phylo validity test be printed out? |
Value
Standard phylogenetic tree object implemented by the R package ape
Examples
init_env()
# load an example model with an already simulated tree sequence
slendr_ts <- system.file("extdata/models/introgression_slim.trees", package = "slendr")
model <- read_model(path = system.file("extdata/models/introgression", package = "slendr"))
# load the tree-sequence object from disk
ts <- ts_load(slendr_ts, model) %>%
ts_recapitate(Ne = 10000, recombination_rate = 1e-8) %>%
ts_simplify()
# extract the 1st tree from a given tree sequence, return ape object
tree <- ts_phylo(ts, i = 1, mode = "index", quiet = TRUE)
tree
# extract the tree at a 42th basepair in the given tree sequence
tree <- ts_phylo(ts, i = 42, mode = "position", quiet = TRUE)
# because the tree is a standard ape phylo object, we can plot it easily
plot(tree, use.edge.length = FALSE)
ape::nodelabels()