【发布时间】:2013-10-11 06:40:41
【问题描述】:
我需要使用函数 extract() 使用大小相等的正方形网格单元从栅格中进行加权平均提取。我的多边形网格位于 UTM21n 中,栅格位于 GCS WGS84 基准 D 中。在将栅格用于 extract() 之前是否必须重新投影?或者函数会正确处理它吗?
【问题讨论】:
标签: r extract raster map-projections
我需要使用函数 extract() 使用大小相等的正方形网格单元从栅格中进行加权平均提取。我的多边形网格位于 UTM21n 中,栅格位于 GCS WGS84 基准 D 中。在将栅格用于 extract() 之前是否必须重新投影?或者函数会正确处理它吗?
【问题讨论】:
标签: r extract raster map-projections
SpatialPolygonshere可以找到函数extract的源代码。代码以如下sn-p开头:
setMethod('extract', signature(x='Raster', y='SpatialPolygons'),
function(x, y, fun=NULL, na.rm=FALSE, weights=FALSE, cellnumbers=FALSE, small=FALSE, df=FALSE, layer, nl, factors=FALSE, sp=FALSE, ...){
px <- projection(x, asText=FALSE)
comp <- .compareCRS(px, projection(y), unknown=TRUE)
if (!comp) {
.requireRgdal()
warning('Transforming SpatialPolygons to the CRS of the Raster')
y <- spTransform(y, px)
}
...
这表明extract 确实执行了投影本身(将 SpatialPolygon 的投影更改为栅格的投影),尽管它没有记录在帮助页面中。
【讨论】:
文档没有提到自动重投影。所以,我认为假设该功能不这样做是节省的。因此,您需要在调用extract之前重新投影自己。
【讨论】: