经度值 0-360 的地图投影

Map projection with longitude values 0-360

我正在尝试绘制经度坐标为 0, 360 的世界地图。当我这样做时,要么经度点从中间地图开始,要么地图的投影被抛出。这是一个例子:

ggplot() + 
      geom_polygon(data = world_map, aes(x=long, y = lat, group=group)) + 
      coord_fixed(1.3) + coord_equal(xlim = c(0, 360), ylim = c(-90, 90))

我希望在全地图投影下经度读数为 0 到 360。

您可以使用地图包中的 "world2" 地图,其范围为 [0,360]: ggplot() + geom_polygon(data = fortify(maps::map("world2",plot=FALSE,fill=TRUE)), aes(x=long, y = lat, group=group)) + coord_fixed(1.3) + coord_equal(xlim = c(0, 360), ylim = c(-90, 90))

或者,如果您想自由移动地图,地图 v3.2.0(刚刚上传到 CRAN)将允许您这样做

myworld = maps::map(wrap=c(0,360), plot=FALSE, fill=TRUE)
    ggplot() + 
      geom_polygon(data = fortify(maps::map("world2",plot=FALSE,fill=TRUE)), aes(x=long, y = lat, group=group)) + 
      coord_fixed(1.3) + coord_equal(xlim = c(0, 360), ylim = c(-90, 90))