繁体   English   中英

经度值为 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))

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM