注释树状图节点上的距离

Annotate the distance on nodes of a dendrograms

考虑一个像这样的简单树状图

dend <- 1:5 %>% dist %>% hclust %>% as.dendrogram

如何在节点上标注距离(高度)?我查找了 dendextend 包,但它不提供这样的功能。但是,我知道我可以列出这些距离

heights <- as.list(dend %>% get_nodes_attr("height"))

非常感谢任何帮助。

在评论的帮助下,一种解决方案是:

heights <- get_nodes_attr(HC[[i]], "height")
heights <- as.list(sort(heights))
heights[which(heights ==0)] <- NULL
for (node in 1: length(heights)){
  with(pvclust:::hc2axes(as.hclust(dend)),
    text(x.axis[node], y.axis[node], pos = 1, sprintf("%.2f", heights[node]))) 
}

这是一个使用 pvclust 包中的 hc2axes 的简单示例:

# install.packages("pvclust") # install package if needed
plot(hc <- hclust(dist( mtcars[1:10, ])))
with(pvclust:::hc2axes(hc), 
     text(x.axis, y.axis, round(y.axis, 2), adj = c(.5, 1))
)