tree_layout {binsegRcpp} | R Documentation |
tree layout
Description
Compute x,y coordinates for graphing a tree.
Usage
tree_layout(node.dt,
space = 0.5)
Arguments
node.dt |
node.dt |
space |
space |
Author(s)
Toby Dylan Hocking
Examples
N.data <- 29L
min.seg.len <- 3L
max.segments <- 5L
cost.dt <- binsegRcpp::get_complexity_best_optimal_cost(
N.data, min.seg.len, max.segments)
set.seed(1)
data.vec <- rnorm(N.data)
fit <- binsegRcpp::binseg_normal(data.vec, max.segments)
tree.list <- list(
best=binsegRcpp::get_complexity_best_optimal_tree(cost.dt),
empirical=binsegRcpp::get_tree_empirical(fit))
library(data.table)
tree.dt <- data.table(type=names(tree.list))[, {
binsegRcpp::tree_layout(tree.list[[type]])
}, by=type]
total.dt <- tree.dt[, .(
candidate.splits=sum(binsegRcpp::size_to_splits(size, min.seg.len))
), by=type]
join.dt <- total.dt[tree.dt, on="type"]
if(require(ggplot2)){
ggplot()+
facet_grid(. ~ type + candidate.splits, labeller=label_both)+
geom_segment(aes(
x, depth,
xend=parent.x, yend=parent.depth),
data=join.dt)+
geom_label(aes(
x, depth, label=size),
data=join.dt)+
scale_y_reverse()
}
[Package binsegRcpp version 2023.8.31 Index]