我正在尝试将shapefile转换为R中的栅格。我的方法是按如下方式读取栅格:
library(rgdal) # Loads SP package by default
demo <- readOGR('F:/data/', 'shapefile') # Creates a SpatialPolygonsDataFrame class (sp)
这个工作正常,我可以绘制它。但是,它是一个很大的shapefile,我想将其转换为栅格。我尝试了以下方法:
r <- raster(ncol=180, nrow=180)
Demo_ras = rasterize(r, demo, 'pop') # pop is an integer here
错误信息:
Error in function (classes, fdef, mtable) :
unable to find an inherited method for function "rasterize", for signature "RasterLayer", "SpatialPolygonsDataFrame"
我有点困惑,这是参数的正确顺序。我也尝试过这个:
Demo_ras = rasterize(demo, r, 'pop')
导致跟随错误:
Error in .polygonsToRaster(x, y, ...) :
polygon and raster have no overlapping areas
尽管对于不覆盖的区域无法生成栅格是有道理的SpatialPolygonsDataFrame
,但我不确定我需要指定哪些信息,以便栅格应包含该SpatialPolygonsDataFrame
区域。