将比例尺添加到ggplot地图

luc*_*ano 9 r spatial map ggplot2

我已经制作了这张地图ggplot2:

library(maptools); library(ggplot2)
data(wrld_simpl)
world <- fortify(wrld_simpl)
worldUk <- subset(world, id=="GBR")
ggplot() +
geom_path(aes(long, lat, group=group), data=worldUk, color="black", fill=NA) +
  coord_equal()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

使用photoshop,我在地图上添加了比例尺.如何使用添加类似比例尺ggplot2?这篇文章添加了一个比例尺,但该栏并未引用距离:比例尺和map-ggplot2上的北箭头

nni*_*loc 8

另一种选择annotation_scale来自ggspatial包。关于这篇博文的更多提示。

library(ggplot2)
library(maptools)
data(wrld_simpl)

world_sf <- sf::st_as_sf(wrld_simpl)
worldUk <- subset(world_sf, NAME == 'United Kingdom')
Run Code Online (Sandbox Code Playgroud)

绘制图层并添加比例尺。

library(ggspatial)

ggplot() +
  geom_sf(data = worldUk) +
  annotation_scale()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明


raf*_*ira 6

有一个名为ggsn的库,可用于自定义比例尺和向北箭头。

ggplot() +
  geom_path(aes(long, lat, group=group), data=worldUk, color="black", fill=NA) +
  coord_equal() +
  ggsn::scalebar(worldUk, dist = 100, st.size=3, height=0.01, dd2km = TRUE, model = 'WGS84')
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明