【问题标题】:How does the function "extract" deal with different projections?“提取”函数如何处理不同的投影?
【发布时间】:2013-10-11 06:40:41
【问题描述】:

我需要使用函数 extract() 使用大小相等的正方形网格单元从栅格中进行加权平均提取。我的多边形网格位于 UTM21n 中,栅格位于 GCS WGS84 基准 D 中。在将栅格用于 extract() 之前是否必须重新投影?或者函数会正确处理它吗?

【问题讨论】:

    标签: r extract raster map-projections


    【解决方案1】:

    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 的投影更改为栅格的投影),尽管它没有记录在帮助页面中。

    【讨论】:

    • +1 令人讨厌的是,我围绕 extract 编写了一个包装函数来处理这种确切情况,因为此功能未记录在案。很高兴知道,谢谢!
    • 有意思,不知道多边形层中不设置投影会怎样。
    【解决方案2】:

    文档没有提到自动重投影。所以,我认为假设该功能不这样做是节省的。因此,您需要在调用extract之前重新投影自己。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-04
      相关资源
      最近更新 更多