nodeHeights <- function (tree)
{
if (attr(tree, "order") != "cladewise" || is.null(attr(tree,
"order")))
t <- reorder(tree)
else t <- tree
root <- length(t$tip) + 1
X <- matrix(NA, nrow(t$edge), 2)
for (i in 1:nrow(t$edge)) {
if (t$edge[i, 1] == root) {
X[i, 1] <- 0
X[i, 2] <- t$edge.length[i]
}
else {
X[i, 1] <- X[match(t$edge[i, 1], t$edge[, 2]), 2]
X[i, 2] <- X[i, 1] + t$edge.length[i]
}
}
if (attr(tree, "order") != "cladewise" || is.null(attr(tree,
"order")))
o <- apply(matrix(tree$edge[, 2]), 1, function(x, y) which(x ==
y), y = t$edge[, 2])
else o <- 1:nrow(t$edge)
return(X[o, ])
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.