2016-03-21 68 views
1

的節點的距離考慮一個簡單的樹狀像註釋在樹狀圖

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

我如何可以註釋節點上的距離(高度)?我查了一下dendextend包,但它沒有提供這樣的功能。然而,我知道我可以從這些距離列表

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

任何幫助,高度讚賞。

+1

來註釋節點,你可以使用'with(pvclust ::: hc2axes(as.hclust(dend)),text(x.axis,y.axis,y.axis,pos = 1)) '。 – lukeA

回答

1

下面是一個使用hc2axespvclust包一個簡單的例子:

# 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

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

很高興幫助。然而,我不認爲有任何循環和「高度」安排的需要 - 看看我的例子。 – lukeA

+0

@lukeA當然!謝謝。 – Sepehr