我试图在空间多边形数据帧中获取多边形的伪重心。今天我偶然发现coordinates
函数实际上为 SpatialPolygonsDataFrame 返回了一些东西。
不幸的是,我在coordinates
的帮助中找不到关于 SpatialPolygonsDataFrame 的值的任何内容。有人能告诉我这些坐标是什么吗?
答案 0 :(得分:3)
它是多边形质心。找到源代码here,查找函数FindCG
。计算的等式与wikipedia上的等式相同,但另外处理具有(近)零区域的多边形的特殊情况,并通过第一点对多边形坐标进行归一化(以增加数值精度和/或避免溢出)。
答案 1 :(得分:0)
阅读 SpatialPolygonsDataFrame 的坐标定义我可以看到它实际上与getSpPPolygonsLabptSlots
相同,因为它检索labpt
插槽,也就是说方便点为多边形添加标签。
> selectMethod("coordinates",signature="SpatialPolygonsDataFrame")
Method Definition:
function (obj, ...)
{
.local <- function (obj)
{
ret = t(sapply(slot(obj, "polygons"), function(i) slot(i,
"labpt")))
dimnames(ret) = list(sapply(slot(obj, "polygons"), function(i) slot(i,
"ID")), NULL)
ret
}
.local(obj, ...)
}