调整由 pvclust 包制作的树状图

Adjust dendogram made by the pvclust package

我想改进我使用 pvclust 包制作的树状图。我看不到大多数 AU / BP 标签,正如您在图片中看到的那样。

你能帮我解决这个问题吗?。我想查看树状图的所有 AU/BP 标签。

下面是可执行代码。

谢谢!

library(rdist)
library(pvclust)
library(geosphere)

df<-structure(list(Latitude = c(-23.8, -23.8, -23.9, -23.9, -23.9,  -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, -23.9, 
+ -23.9, -23.9, -23.9, -23.9, -23.9), Longitude = c(-49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.6, -49.7, 
+ -49.7, -49.7, -49.7, -49.7, -49.6, -49.6, -49.6, -49.6), Waste = c(526, 350, 526, 469, 285, 175, 175, 350, 350, 175, 350, 175, 175, 364, 
+ 175, 175, 350, 45.5, 54.6)), class = "data.frame", row.names = c(NA, -19L))

coordinates<-subset(df,select=c("Latitude","Longitude")) 
d<-as.dist(distm(coordinates[,2:1]))
mat <- as.matrix(d)
mat <- t(mat)
fit <- pvclust(mat, method.hclust="average", method.dist="euclidean", 
               nboot=1000, r=seq(0.9,1.4,by=.1))
fit
plot(fit,hang=-1,cex=.8,main="Average Linkage Clustering")
pvrect(fit, alpha=.80, pv="au", type="geq")

考虑 325 个地点

最简单的方法是更改​​图的大小 window 并增加 hang= 参数:

x11(width=12, height=8) # quartz(width=12, height=8) for mac or windows(width=12, height=8) for Windows
plot(fit,hang=.05,cex=.8,main="Average Linkage Clustering")
pvrect(fit, alpha=.80, pv="au", type="geq")

这是一个包含 150 个案例的示例(大约是您拥有的 325 个案例的一半,但来自 R 中包含的数据集:

data(iris)
mat <- t(as.matrix(iris[, 1:4]))
fit <- pvclust(mat, method.hclust="average", method.dist="euclidean",
               nboot=1000, r=seq(0.9,1.4,by=.1))

现在将结果打印成 pdf:

pdf(file="Dendrogram.pdf", width=13, height=7.5)
compression="lzw")
plot(fit,hang=.05, cex=.5, cex.pv=.5, main="Average Linkage Clustering")
pvrect(fit, alpha=.80, pv="au", type="geq")
dev.off()

pdf的解析度更好,但文字重叠较少。另一种选择是减少标签:

plot(fit,hang=.05, cex=.5, cex.pv=.5, print.num=FALSE, print.pv=FALSE, 
     labels=FALSE, main="Average Linkage Clustering")
pvrect(fit, alpha=.80, pv="au", type="geq")

这只打印没有任何标签的树状图,因此您可以看到结构而不是细节。在某些情况下,数据代表几个组。 iris 数据包括三个物种。您可以通过更改为 labels=rep(1:3, each=50) 来仅标记物种,以便数字 1、2、3 标识三个物种。