我想使用k-medoids聚类地理信息。在考虑地球的曲率时,我需要在纬度,经度和深度上进行聚类。
我的最终目标是将数据绘制为地图,不同区域的颜色不同。以下是绘制和打印数据的现有ggplot(但仅包括纬度,经度和不必要的幅度),并未考虑深度或聚类。
<tag4>
以下是用于ggplot的示例数据集(没有深度或聚类):
pp <- ggplot() +
geom_polygon(aes(long,lat, group=group), fill="palegreen3", colour="grey60", data=county) +
geom_polygon( data=states, aes(x=long, y=lat, group = group),colour="royalblue4", fill=NA) +
annotate("rect", xmin=-84, xmax=-71, ymin=35.5, ymax=43.5, colour="black", size=1, fill="blue", alpha="0.01") +
geom_point(data=plotdata, size=3, alpha = .7, aes(x=lon, y=lat, color=emw)) +
theme(plot.background = element_rect(fill = 'grey')) +
geom_abline(intercept = 3, slope = -.45, color = "grey", size = 1)
print(pp)
有关如何最好地实现这一目标的任何建议吗?
答案 0 :(得分:0)
你试图用闪亮的方式做这件事与实际问题无关,所以我放弃了这个标签。
您可以使用包geosphere
来计算地理点之间的距离(请参阅distHaversine
,请参阅as.dist
)。您可以将生成的距离矩阵从pam
包中提供给cluster
函数,以获取您的群集。
或者,您可以将坐标转换为3d坐标,如3D coordinates on a sphere to Latitude and Longitude
所述