使用rgeos库合并国家多边形

使用rgeos库合并国家多边形,r,svn,R,Svn,嗨,我需要一个R中的世界地图,并在我的windows 10机器R版本2.15.2(2012-10-26)上使用了几行代码。rgeos版本:0.3-4(SVN修订版438) GEOS运行时版本:3.4.2-CAPI-1.8.2 r3921 但是,在我们最近安装了R(3.3.2版)、rgeos版本:0.3-21(SVN修订版540)、GEOS运行时版本:3.4.2-CAPI-1.8.2 r3921的unix服务器上,没有运行相同的代码 执行命令gUnionCascaded(sPDF)会在带有不同版本

嗨,我需要一个R中的世界地图,并在我的windows 10机器R版本2.15.2(2012-10-26)上使用了几行代码。rgeos版本:0.3-4(SVN修订版438) GEOS运行时版本:3.4.2-CAPI-1.8.2 r3921 但是,在我们最近安装了R(3.3.2版)、rgeos版本:0.3-21(SVN修订版540)、GEOS运行时版本:3.4.2-CAPI-1.8.2 r3921的unix服务器上,没有运行相同的代码

执行命令gUnionCascaded(sPDF)会在带有不同版本rgeos包的unix计算机上出错 TopologyFunc(组id(spgeom[ids[[i]]、id[ids[[i]])、名称(ids)[i]、:IllegalArgumentException:线性化点未形成闭合的线条字符串)中出错

#sample code:
library(rgeos)
library(rworldmap)
sPDF <- getMap()
poly_globe <- gUnionCascaded(sPDF)
plot(poly_globe)
#示例代码:
图书馆(rgeos)
图书馆(世界地图)

sPDF最终,这似乎可以追溯到由rworldmap提供的数据集出现的问题。这些问题似乎可以通过快速应用cleangeo包中的
clgeo_Clean()
来解决

试试这个,看看情况是这样的:

library(rgeos)
library(rworldmap)
library(cleangeo)
sPDF <- getMap()
sPDF <- clgeo_Clean(sPDF)
poly_globe <- gUnionCascaded(sPDF)
plot(poly_globe)
库(rgeos)
图书馆(世界地图)
图书馆(清洁地理)

sPDF不知道为什么会发生这种情况,但它在我的Windows机器上也不再工作,运行64位R-3.3.2,使用rgeos版本0.3.21。你能推荐任何替代方法吗?可以确认它在macOS Sierra R 3.3.2、rgeos 0.3-20上已经失效。我还为
gSimplify()
gBuffer()获得了它
可能会通过此途径尝试修复:或使用此备用形状文件(未测试是否仍有错误)@hrbrmstr在本例中看起来像
cleangeo::clgeo_Clean()
也提供了快速修复。