【发布时间】:2021-12-14 11:51:17
【问题描述】:
我在 R 中有 SpatialPolygonsDataFrame 类,我想对其进行光栅化。我使用下面的代码栅格化多边形:
> p <- shapefile('MadaGranary')
> p
class : SpatialPolygonsDataFrame
features : 1
extent : 100.1269, 100.5313, 5.793798, 6.446769 (xmin, xmax, ymin, ymax)
crs : +proj=longlat +datum=WGS84 +no_defs
variables : 1
names : id
value : 1
> crs(p) <- NULL
> # Define RasterLayer object
> r.raster <- raster(extent(p), res = 100)
> #rasterize
> p.r <- rasterize(p, r.raster)
> print(p.r)
class : RasterLayer
dimensions : 1, 1, 1 (nrow, ncol, ncell)
resolution : 100, 100 (x, y)
extent : 100.1269, 200.1269, -93.55323, 6.446769 (xmin, xmax, ymin, ymax)
crs : +proj=longlat +datum=WGS84 +no_defs
source : memory
names : layer
values : NA, NA (min, max)
attributes :
ID id
1 1
不幸的是,这段代码已将单元格尺寸分配给dimensions : 1, 1, 1 (nrow, ncol, ncell),而获取ncols and nrows 的实际值对我来说非常重要。
当我print p.r 时,我需要在控制台中获取dimensions : (nrow, ncol, ncell) 的值,以便我能够保存所有属性以便稍后使用它进行另一个分析。
注意:我需要获取的resolution输出应该是代表新栅格中ncols and nrow的真实值,而不仅仅是我的代码中显示的dimensions : 1, 1, 1 (nrow, ncol, ncell)。
有人可以帮忙吗?
【问题讨论】: