【发布时间】:2021-01-09 12:54:30
【问题描述】:
我有一个栅格,我想检查具有值的单元格是否与我感兴趣的区域重叠,这是一个空间多边形文件。
有没有快速的方法来做到这一点?
我的光栅看起来像这样:
我尝试了什么:
r <- raster("C:/user/test.jp2")
studyarea <- readOGR("C:/user/boundary.shp")
dummi <- as(extent(r), "SpatialPolygons")
if (gContainsProperly(studyarea, dummi)) {
print("Raster extent is fully within the Area of interest")
}
else if (gIntersects(studyarea, dummi)) {
print("Raster extent is not fully within the Area of interest")
} else {
print("Raster extent is fully outside the Area of interest")
}
as(extent(r), "SpatialPolygons") 在值和 NA 内创建一个多边形。但我只想检查值部分和研究区域是否重叠
栅格和研究区域的数据示例:
matrix <- matrix(c(NA,NA,NA,1,NA,NA,2,1,NA,1,3,4,2,3,4,1), nrow=4)
r <- raster(matrix)
extent(r) <- c(399960, 509760, 5290200, 5400000)
crs(r) <- "+proj=utm +zone=32 +datum=WGS84 +units=m +no_defs"
writeRaster(r, paste(getwd(),"filename.jp2"))
matrix <- matrix(c(1,1,NA,NA,1,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA), nrow=4)
rpoly<- raster(matrix)
extent(rpoly) <- c(399960, 509760, 5290200, 5400000)
crs(rpoly) <- "+proj=utm +zone=32 +datum=WGS84 +units=m +no_defs"
studyarea <- rasterToPolygons(rpoly)
谢谢
【问题讨论】:
标签: r gis polygon raster spatial