heights.phylo <-
function(x){
phy=x
phy <- reorder(phy, "postorder")
n <- length(phy$tip.label)
n.node <- phy$Nnode
xx <- numeric(n + n.node)
for (i in nrow(phy$edge):1) xx[phy$edge[i, 2]] <- xx[phy$edge[i, 1]] + phy$edge.length[i]
root = ifelse(is.null(phy$root.edge), 0, phy$root.edge)
labs = c(phy$tip.label, phy$node.label)
depth = max(xx)
tt = depth - xx
idx = 1:length(tt)
dd = phy$edge.length[idx]
mm = match(1:length(tt), c(phy$edge[, 2], Ntip(phy) + 1))
dd = c(phy$edge.length, root)[mm]
ss = tt + dd
res = cbind(ss, tt)
rownames(res) = idx
colnames(res) = c("start", "end")
res = data.frame(res)
res
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.