给定raster对象r,如何创建具有相同范围和分辨率的新栅格,单元格值等于相应单元格的纬度(或经度)r?
例如,r可能看起来像:
r <- raster(matrix(runif(100), ncol=10))
Run Code Online (Sandbox Code Playgroud)
你可以使用这个init功能
library(raster)
r <- raster(nrow=10, ncol=10)
lon <- init(r, 'x')
lat <- init(r, 'y')
Run Code Online (Sandbox Code Playgroud)
一种简单的方法是(1)复制栅格r;(2)使用提取其坐标coordinates;(3)将经度或纬度分配给新栅格对象的像元。
例如,使用您的r:
library(raster)
r <- raster(matrix(runif(100), ncol=10))
lat <- lon <- r
xy <- coordinates(r)
lon[] <- xy[, 1]
lat[] <- xy[, 2]
Run Code Online (Sandbox Code Playgroud)
它们是这样的:
plot(setNames(stack(r, lon, lat), c('r', 'lon', 'lat')))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3124 次 |
| 最近记录: |