2

我有一个包含 300 个空间多边形数据框的列表R,我希望在其中以几何方式溶解。每个SpatialPolygonsDataFrame包含大约 500 个多边形。我已经尝试了这些功能gUniongUnaryUnion包含在 rgeos 包中。

处理gUnion是这样完成的:

dissolved <- gUnion(tilelist[[1]], tilelist[[2]], byid=FALSE, id=NULL)
for(k in 1:length(tilelist)){
  dissolved <- gUnion(dissolved, tilelist[[k]], byid=FALSE, id=NULL)
} 

和处理gUnaryUnion是这样完成的:

flatpolygon=list()
for(k in 1:length(tilelist)){
  flatpolygon[[k]] <- tilelist[[k]]@polygons
}
mypoly <- SpatialPolygons(unlist(flatpolygon))
final <- gUnaryUnion(mypoly, id = NULL)

这两种方法都需要几个小时来执行溶解(在 Win 64、16 GB RAM 上)。关于如何提高处理时间的任何算法想法?

4

0 回答 0