合并R中的邻近区域(聚合空间数据)?

Mat*_*ert 5 r geospatial

我想我需要重新措辞我之前措辞严厉的问题(删除它).这是另一种尝试.我想加入邻近地区,以便他们的共同边界消失,只能看到他们的外线.

这是一个可重复的例子:

require(shapefiles)
require(sp)

xx <- readShapeSpatial(system.file("shapes/sids.shp", package="maptools")[1],
                   IDvar="FIPSNO", proj4string=CRS("+proj=longlat +ellps=clrk66"))

# show all the subregions
plot(xx)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

现在让我们只考虑区域3和区域5

plot(xx[c(3,5),])
Run Code Online (Sandbox Code Playgroud)

我怎样才能聚合这些区域.在实践中,我想要做的就是拥有一张显示所有国家的整个大陆的地图,并制作一张显示北美和南美的地图.

对我来说,这看起来是一个非常常见的任务,但到目前为止我找不到合适的功能.我只是错过了一个功能,还是我可以手动操作?

在此输入图像描述

dig*_*aps 9

rgeos软件包提供了许多用于处理Spatial*数据的出色工具,可以在这种情况下使用.

例如:

library(rgeos)
regionOfInterest <- gUnion(xx[3,], xx[5,])
Run Code Online (Sandbox Code Playgroud)

这也有相同的结果,对多个多边形可能更有用:

regionOfInterest <- gUnionCascaded(xx[c(3,5), ])
Run Code Online (Sandbox Code Playgroud)

结果来自plot(regionOfInterest):

在此输入图像描述