Шейп файл на ggplot - PullRequest
       63

Шейп файл на ggplot

0 голосов
/ 01 июня 2018
library(raster)
library(ggplot2)

map.shp <- getData('GADM', country='FRA', level=1)

plot(map.shp)
ggplot(mtcars, aes(x = hp, y = disp)) + geom_point()

Как можно поместить map.shp с правой стороны ggplot в виде небольшой вставки.

1 Ответ

0 голосов
/ 01 июня 2018

Я думаю, что есть несколько способов добиться этого, но простым способом было бы использовать cowplot и ggdraw:

Я использую sf вместе с geom_sf из версии разработкиggplot2 доступно по адресу devtools::install_github("hadley/ggplot2")

require(ggplot2)
require(cowplot)
require(sf)
require(raster)

map.shp <- getData('GADM', country='FRA', level=1) %>% st_as_sf()



plot.cars <- ggplot(mtcars, aes(x = hp, y = disp)) + geom_point()
plot.map <- ggplot() + geom_sf(data=map.shp)

inset_map <- ggdraw() +
  draw_plot(plot.cars, 0, 0, 1, 1)+
  draw_plot(plot.map, 0.5, 0.52, 0.5, 0.4) 

enter image description here

Извините, шейп-файл рендерился очень медленно для меня, поэтому я не мог поиграть сслишком большое позиционирование.Что-то вроде этого, что вы были после?

...