r - 如何过滤 R 中的重叠多边形(并保留数据)
问题描述
我有一组 SpatialDataFrames,包括 Lines 和 Polygons。我想找到它们重叠的线条/多边形。最终目标是保留所有重叠(最好包含数据)并删除不重叠的多边形。用户应该能够看到哪些多边形重叠并可以采取行动。
我希望你能给我一点推动来完成这项任务。谢谢!
最好显示在传单上。如果这太难了,那么具有重叠数据的数据框也可以工作。
我试过使用st_intersection
,它给了我错误'没有适用于'st_intersection'的方法......并且使用gIntersects(spgeom1, spgeom2)
它给我的结果是 TRUE/FALSE 格式。通过一些编辑,我可以得到 row (spgeom2) 和 col (spgeom1) 格式的结果。但就是这样……</p>
spdf1 = geojsonio::geojson_read("C:/Users/folder/json/data1.json", what = "sp")
spdf2 = geojsonio::geojson_read("C:/Users/folder/json/data2.json", what = "sp")
spdf3 = geojsonio::geojson_read("C:/Users/folder/json/data3.json", what = "sp")
sp1sp2 = gIntersect(spgeom1, spgeom2, byid = TRUE)
dfoverlaps = as.data.frame(sp1sp2)
overlaps = which(dfoverlaps == “TRUE”, arr.ind = TRUE)
解决方案
推荐阅读
- ios - 在 GMSMapView 上显示折线的开始和结束标记
- reactjs - React JS 和 Axios 的无效钩子调用错误
- c - 使用 MKDEV 宏的简单方法是什么?
- android - 如何以编程方式在 Xamarin 表单编辑器中选择文本
- html - 使用 rvest 从元和按钮标签中抓取信息
- c++ - SFML 如何让各种形状在随机方向上移动?
- flutter - Flutter Doctor 仅在安装的 bin 目录中运行
- infinispan - 我可以使用 @ClientCacheEntryExpired 从 Infinispan 服务器侦听器中检索过期的缓存条目吗?
- python - 如何在 Python 中使用 email.message.EmailMessage 类处理传入的电子邮件?
- tomcat - AWS EC2:无法切换 Tomcat 9 监听端口 80