注释树形图节点上的距离

时间:2016-03-21 10:53:26

标签: r dendextend

考虑像

这样的简单树形图
dend <- 1:5 %>% dist %>% hclust %>% as.dendrogram

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

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

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

以下是使用hc2axes包中的pvclust的简单示例:

# 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))
)

enter image description here

答案 1 :(得分:0)

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

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]))) 
}