嗨,我需要 R 中的世界 map ,并使用几行代码将它放在我的 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 的 unix 服务器上运行 。 2 r3921

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

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

最佳答案

最终,这看起来像是 rworldmap 提供的数据集存在问题。这些问题似乎可以通过快速应用 cleangeo 包中的 clgeo_Clean() 来解决。

试试这个看看是不是这样:

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

r - 使用 rgeos 库合并国家多边形-LMLPHP

关于r - 使用 rgeos 库合并国家多边形,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41404079/

10-13 05:39