Странный геопространственный сюжет с ggplot2 - PullRequest
2 голосов
/ 03 мая 2020

Я пытаюсь построить Испанию для каждой страны, поэтому я использую .geojson от github. Мой код следующий:

library(tidyverse)
library(geojsonio)
spdf <- geojson_read("https://raw.githubusercontent.com/codeforamerica/click_that_hood/master/public/data/spain-provinces.geojson",  what = "sp")

library(broom)
spdf_fortified <- tidy(spdf, region = "cod_prov")

ggplot() +
  geom_polygon(data = spdf_fortified, aes( x = long, y = lat, group = id), fill="white", color="grey") +
  theme_void() +
  coord_map()

И вывод действительно ошибочный c, полигоны действительно перепутаны.

enter image description here

Привет, есть вопросы по этому поводу. Прежде всего, почему это поведение?

Также читая некоторые учебники, я обнаружил, что нам нужно «укрепить» spdf, почему это так?

И, наконец, что здесь делает group

1 Ответ

2 голосов
/ 04 мая 2020

Я не думаю, что вам нужно выполнять какие-либо шаги обработки данных, если вы просто читаете Geo JSON при использовании пакета {sf}, который также хорошо интегрирован в {ggplot2} графику.

library(sf)
#> Linking to GEOS 3.7.2, GDAL 2.4.2, PROJ 5.2.0
library(ggplot2)

spain <- read_sf("https://raw.githubusercontent.com/codeforamerica/click_that_hood/master/public/data/spain-provinces.geojson") 

ggplot() +
  geom_sf(data = spain)

Создано в 2020-05-03 пакетом представительство (v0.3.0)

...