R ggplot2 | 用geom_sf()绘制地图

3 篇文章 0 订阅

用geom_sf()绘制地图

使用geom_polygon()绘制地图,每次都会提示该功能已经deprecated,而sf包配合ggplot2的geom_sf()函数则能快速地绘制地图,且无须设置long,lat,group=id这些参数。代码如下:

ws <- ggplot() +
  geom_sf(data = fortify(wsdiv1),
               colour = "black",
               fill=NA)+
  coord_sf(ylim=c(1800000,5921396))+
  theme_set(theme_bw())
ws

结果:
在这里插入图片描述

绘图中遇到了一个问题是原始数据y范围很大,空出了一些空白很不美观。查阅很多资料,有一篇文章是通过设置bbox范围,通过地理坐标与平面坐标转化,再设置到绘图函数参数里实现,顺便捞到了proj4等参数的网站,小本本记下:
ArcGIS地理坐标编码
查找空间参考各种参数
绘图范围设置,投影转换
正当我采用链接3的方法进行尝试,打开arcgis后发现直接可以通过光标大致确定y范围及数字,因此直接在coord_sf()中设置ylim=c(,)即可…于是立马得到了上图。但是后续画点的时候似乎又遇到了一点问题…接下一篇吧…
PS:因为研究区是mainland China,且上图是中国1级流域分区,因此南海诸岛就没有画。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值