You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言hclust生成地理点层次聚类树状图结果解读求助

hclust地理点位层次聚类树状图解读

分析基础逻辑

  • 距离计算:调用geosphere包的distm()函数计算经纬度点位间的球面实际地理距离,单位为米,比平面欧氏距离更适配经纬度坐标的距离测算。
  • 聚类算法:采用hclust()的平均联动(average,即UPGMA)方法,类间距离取两类内所有点位两两距离的平均值,抗离群点干扰能力强,适合空间点位聚类场景。

点位分布可视化代码

library(geosphere)

Points_properties<-structure(list(Propertie=c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29), Latitude = c(-24.781624, -24.775017, -24.769196, 
                                               -24.761741, -24.752019, -24.748008, -24.737312, -24.744718, -24.751996, 
                                               -24.724589, -24.8004, -24.796899, -24.795041, -24.780501, -24.763376, 
                                               -24.801715, -24.728005, -24.737845, -24.743485, -24.742601, -24.766422, 
                                               -24.767525, -24.775631, -24.792703, -24.790994, -24.787275, -24.795902, 
                                               -24.785587, -24.787558), Longitude = c(-49.937369, 
                                                                                                  -49.950576, -49.927608, -49.92762, -49.920608, -49.927707, -49.922095, 
                                                                                                  -49.915438, -49.910843, -49.899478, -49.901775, -49.89364, -49.925657, 
                                                                                                  -49.893193, -49.94081, -49.911967, -49.893358, -49.903904, -49.906435, 
                                                                                                  -49.927951, -49.939603, -49.941541, -49.94455, -49.929797, -49.92141, 
                                                                                                  -49.915141, -49.91042, -49.904772, -49.894034)), row.names = c(NA, -29L), class = c("tbl_df", "tbl", 
                                                                                                                                                                                                                        "data.frame"))

coordinates<-subset(Points_properties,select=c("Latitude","Longitude"))
plot(coordinates[,2:1])
text(x = Points_properties$Longitude,
y= Points_properties$Latitude, labels=Points_properties$Propertie, pos=2)

点位分布示意图

层次聚类实现代码

d<-distm(coordinates[,2:1])
d<-as.dist(d)
fit.average<-hclust(d,method="average")
plot(fit.average,hang=-1,cex=.8, main = "")

层次聚类树状图

树状图结果实际含义

先明确坐标轴规则:

  • 横轴为29个点位的编号,由聚类算法自动排序,核心逻辑是空间距离越近的点位,横轴排列位置越靠近。
  • 纵轴为类间合并时的实际地理距离(单位:米),两个分支交汇的节点高度越高,代表对应两组点位的空间距离越远,相似性越低。

结合实际点位分布,聚类结果完全匹配空间邻近性:

  • 节点高度低于1000米的合并,均为空间上直接相邻的点位抱团:21、22、23、15、2组成研究区最西侧的连片点位群;3、4、6、20、5、7、8、9组成研究区中部偏北的近邻点串;10、17、12、14、29、18、19、28、11、16、27、26组成研究区东侧的连片点位群;1、24、25、13组成研究区中南部的近邻点组。
  • 若在纵轴3000米位置水平切割树状图,可得到3个独立聚类簇,正好对应研究区西、中、东三个自然空间组团,无跨区域错分情况。
  • 树状图最顶端的合并节点高度接近7000米,对应三个大组团完全合并的距离,和研究区东西方向的实际跨度基本吻合。

补充:本次选用的平均联动聚类方法未出现单联动聚类常见的链式错分问题,结果可以直接用于后续空间分区、点位组特征统计等分析。

内容的提问来源于stack exchange,提问作者Antonio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 00:18:20