SpatialPolygonsDataFrame 对象的 coordinates() 值?

Value of coordinates() for a SpatialPolygonsDataFrame object?

我正在尝试为空间多边形数据框中的多边形获取伪重心。今天我偶然发现了 coordinates 函数,它实际上 returns 一个 SpatialPolygonsDataFrame.

的东西

不幸的是,在 coordinates 的帮助下,我没有找到任何有关 SpatialPolygonsDataFrame 的值的信息。有人能告诉我这些坐标是什么吗?

阅读 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, ...)
}

它是多边形质心。找到源代码 here, look for function FindCG. The equations computed are equivalent to those found on wikipedia,但另外处理多边形(接近)零面积的特殊情况,并通过第一个点标准化多边形坐标(以提高数值精度 and/or 避免溢出)。