正如您在下面看到的那样,在我使用ggplots制作的地图上有一个奇怪的显示问题。任何投影似乎都会发生相同的问题。



这是代码:
仅需要包mapsggplot2

  mapWorld <- borders("world", colour="gray50", fill="black")
    ggplot() + mapWorld +
      coord_map("mercator") +
      ylim(-90,90)

最佳答案

显然,此问题是由与0坐标相交的多边形引起的,该坐标是世界合并的地方。 R不知道如何关闭这些多边形并将其投影到世界各地。

此方法重新创建多边形,并防止它们越过0坐标(xlim和ylim)。它适用于任何类型的投影。

require(ggplot2)
require(PBSmapping)
require(data.table)

mapWorld <- map_data("world")
setnames(mapWorld, c("X","Y","PID","POS","region","subregion"))
worldmap = clipPolys(mapWorld, xlim=xlim,ylim=ylim, keepExtra=TRUE)
ggplot() + geom_polygon(data = mapWorld, aes(X,Y,group=PID))

关于r - 映射在ggplot2中可视化/显示bug?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30360830/

10-11 17:46