我有一个在R中打开的栅格地图(数字高程模型),我需要知道一个特定网格点的地理坐标才能知道其值(即海拔)。我尝试使用extract()函数,但似乎无法正常工作,并且尝试将其转换为矩阵,但我只知道坐标,而不知道单元格的列号和行号。 this is what my raster data looks like 我认为这真的很简单,但是我被困在这里。
有什么想法吗?
我有一个在R中打开的栅格地图(数字高程模型),我需要知道一个特定网格点的地理坐标才能知道其值(即海拔)。我尝试使用extract()函数,但似乎无法正常工作,并且尝试将其转换为矩阵,但我只知道坐标,而不知道单元格的列号和行号。 this is what my raster data looks like 我认为这真的很简单,但是我被困在这里。
有什么想法吗?
对于任何栅格r
,例如:
> r = raster(matrix(runif(100),10,10),xmn=3,xmx=13,ymn=10,ymx=20)
创建一个包含两列的坐标矩阵:
> m = matrix(c(12,16),ncol=2)
> m
[,1] [,2]
[1,] 12 16
并提取:
> extract(r,m)
[1] 0.9597013
如果您有更多的点,请向矩阵中添加额外的行。
对于栅格外的位置,您将获得NA退回:
> m = matrix(c(12,21),ncol=2)
> extract(r,m)
[1] NA