使用rgeos库合并国家多边形

时间:2016-12-30 23:43:51

标签: 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)的unix服务器上的相同代码没有运行,rgeos版本:0.3-21,(SVN版本540),GEOS运行时版本:3.4.2 -CAPI-1.8.2 r3921

执行命令 gUnionCascaded(sPDF)在unix机器上使用diff版本的rgeos包给出错误 TopologyFunc中的错误(groupID(spgeom [ids [[i]]],id [ids [[i]]]),名称(ids)[i] ,: IllegalArgumentException:LinearRing的点不形成闭合的线串。

#sample code:
library(rgeos)
library(rworldmap)
sPDF <- getMap()
poly_globe <- gUnionCascaded(sPDF)
plot(poly_globe)

1 个答案:

答案 0 :(得分:4)

最终,它似乎跟踪了 rworldmap 提供的数据集问题。通过从 cleangeo 包中快速应用clgeo_Clean(),似乎可以解决这些问题。

试试看,情况就是这样:

library(rgeos)
library(rworldmap)
library(cleangeo)
sPDF <- getMap()
sPDF <- clgeo_Clean(sPDF)
poly_globe <- gUnionCascaded(sPDF)
plot(poly_globe)

enter image description here