我想创建一个带有水平标签的树状图,但是叶子根据它们的高度悬挂,而不是仅仅下降到图的边缘。
示例:
par(mfrow = c(1,2))
hc <- hclust(dist(USArrests), "ave")
plot(hc) # a plot with hanging branches
plot(as.dendrogram(hc), horiz = TRUE) # a horizontal plot, but the branches are not hanging
有关如何编程的任何建议吗?
感谢。
答案 0 :(得分:3)
您可以更改hang
功能中的as.dendrogram
值。
par(mfrow = c(1,2))
hc <- hclust(dist(USArrests), "ave")
plot(hc)
plot(as.dendrogram(hc, hang=0.02), horiz = TRUE)
答案 1 :(得分:1)
为了记录,我实现了一个hang.dendrogram
函数(在dendextend包中),允许在创建之后挂起树形图(并且不仅在从hclust更改为树形图时)。以下是如何使用它:
install.packages("dendextend")
library(dendextend)
dend <- as.dendrogram(hclust(dist(USArrests), "ave"))
par(mar = c(5,5,5,5))
plot(hang.dendrogram(dend), horiz = TRUE)