首页 > 解决方案 > 以公里为单位对具有给定分辨率的矢量进行栅格化

问题描述

我想知道如何创建一个分辨率为 10km X 10km 的栅格,它可以覆盖 R 中巴西领土的整个延伸。

标签: rr-raster

解决方案


你可以按照这些思路做一些事情

获取巴西的多边形

library(raster)
bra <- getData("GADM", country="BRA", level=1)

投影它以获取米为单位。可能有一个更适合您的目的的坐标参考系统。

bcrs <- "+proj=poly +lat_0=0 +lon_0=-54 +x_0=5000000 +y_0=10000000 +ellps=GRS80"
pbra <- sp::spTransform(bra, bcrs)

创建栅格图层

r <- raster(pbra, res=10000)

r
#class      : RasterLayer 
#dimensions : 432, 482, 208224  (nrow, ncol, ncell)
#resolution : 10000, 10000  (x, y)
#extent     : 2794657, 7614657, 6265592, 10585592  (xmin, xmax, ymin, ymax)
#crs        : +proj=poly +lat_0=0 +lon_0=-54 +x_0=5000000 +y_0=10000000 +ellps=GRS80 

展示

values(r) <- 1:ncell(r)
plot(r)
lines(pbra)

推荐阅读