调整pvclust包制作的dendogram

调整pvclust包制作的dendogram,r,cluster-analysis,hierarchical-clustering,pvclust,R,Cluster Analysis,Hierarchical Clustering,Pvclust,我想改进我使用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, -

我想改进我使用
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")
库(rdist)
图书馆(pvclust)
图书馆(地球圈)

df最简单的方法是更改绘图窗口的大小并增加
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具有更好的分辨率,但文本中的重叠较少。另一种选择是减少标签:

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,每个=50)来仅标记物种
这样数字1、2、3就可以识别出这三个物种。

谢谢Carlson博士,你回答了我的问题。我会接受的。不过,我是按照你对我的数据说话的方式来做的,数据是325,而不是你在示例中所做的19(我只做了19,只是为了更容易执行)。它改进了图形,但有没有办法进一步改进呢?我在上面插入了图像,让您看看结果如何。如果您愿意,我可以将包含325个位置的数据库传递给您。包含325个位置,您必须决定要显示的重要内容。您的计算机显示器只有这么大,其分辨率低于纸张。为了获得更高的分辨率注意:您需要打印到一个文件,如
.pdf
svg
.tiff
。然后您可以减小字体大小。我将在上面添加一个示例来打印pdf以适合法定大小的纸张。另一种方法是打印较少的信息。从打印中删除文本的选项是
print.num=FALSE
print.pv=FALSE
,和
labels=FALSE
。非常感谢您的回答。我非常喜欢您在PDF中制作的图表,我可以很好地看到数字。我想做一些类似于您所做的事情。但是,我在我的情况下做了测试,它看起来仍然不太好。我可能遗漏了一些东西。如果它不令人不舒服,您可以用h此链接中的基础:这是我正在使用的数据库。如果您接受,在使用pvclust函数时,请使用nboot=5,因为使用nboot=1000花费的时间太长。再次感谢您。请尝试
pdf(file=“DendrogramANSI-D.pdf”,width=32,height=20)#ANSI D 22英寸x 34英寸。
这将太大,无法在大多数打印机上打印,但您可以放大计算机屏幕并读取数字。再次感谢dcarlson!您帮了我很多忙。
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")