【发布时间】:2020-04-08 08:55:26
【问题描述】:
我在弄清楚如何解决 R 中的问题时遇到了一些问题。我有一个包含大约 300 个多边形(区域)的 shapefile 和一个包含不同值(例如基础设施、森林、湖泊)的栅格层(LULC 地图)等等一)对于不同的像素。我的任务是获取栅格文件(LULC 地图)中每个多边形的面积,然后从每个多边形的总面积中减去一个值(在我的情况下,其中三个值表示基础设施)。
我是 R 编程和使用这种过程的新手,因此非常感谢任何帮助!我只需要一些帮助来了解如何解决这个问题以及将其分为哪些步骤。所以请耐心等待:)
我已经成功读取了我的 shapefile 并进行了光栅化:
# Read shapefile into R
jvk_18 <- readOGR(dsn = "JKV_18_19/Alla_kretsar_geografisk1.shp")
#Change CRS on shapefile to same as rasterlayer, copy the one from raster layer
jvk_18 <- spTransform(jvk_18,
CRS("+proj=utm +zone=33 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"))
# Set up a raster template for a 1000 degree grid in resulution.
ext <- extent(268607.50, 920075.4, 6133580, 7670992)
gridsize <- 100
r <- raster(ext, res = gridsize)
# Rasterize shapefile
rr <- rasterize(jvk_18, r)
#Plot raster (axes = T to get the map I want)
plot(rr, axes = T)
然后我读入了我的光栅文件:
> mark_raster <- raster("Marktäckedata/nmd2018bas_generaliserad_v1_0.tif")
> plot(mark_data)
所以这就是我已经走了多远!所以我对你们所有人的问题是如何进行? - 两者都有相同的 CRS (WGS84)
两者的范围相同
我猜我的光栅化 shapefile 需要与我的光栅文件具有相同的分辨率(即 10*10)?我应该这样做吗?
在开始合并或计算之前我还需要做些什么吗?
我应该在任何计算之前合并这两个层吗?在这种情况下,我需要在合并之前做任何事情吗?
还有其他方法可以计算面积吗?
我知道这有很多要求!任何帮助将不胜感激:)
【问题讨论】:
标签: merge polygon raster area calculation