R - манипулирование шейп-файлами изнутри R - PullRequest
0 голосов
/ 28 мая 2020

У меня есть шейп-файл хорватских муниципалитетов и городов, загруженный с веб-сайта Евростата здесь (файл на самом деле содержит все страны ЕС, но я отфильтровал его, чтобы содержать только Хорватию), содержащийся в объекте с именем data.

Этот код

ggplot(data)+
  geom_sf()

Дает нам следующее:

enter image description here

Теперь мне нужно группировать муниципалитеты и города в неофициальные региональные единицы более высокого уровня. Я сделал это вручную, введя аббревиатуру региона рядом с каждым муниципалитетом / городом в Хорватии в отдельной колонке. Фрейм данных data выглядит следующим образом (здесь показан только образец, поскольку данные слишком длинные):

Region LAU_LABEL geometry
BJ     Bjelovar  (((16.69228 45.84202, 16.70681 45.8462, 16.71368 45.8559, 16.71011 45.86689, 16.7014...
DA     Lipik     (((17.17597 45.3486, 17.16472 45.35312, 17.15733 45.34877, 17.13623 45.34416, 17.129...
SB     Klakar    (((18.14654 45.13408, 18.15017 45.13061, 18.14664 45.12508, 18.15147 45.1137, 18.184...

Где Region - вышеупомянутая переменная, которую я ввел вручную, LAU_LABEL - имя муниципалитета / города и geometry содержит геометрические свойства шейп-файла. Карта этих настраиваемых региональных единиц более высокого порядка выглядит, с разными цветами каждого региона, выглядит следующим образом:

ggplot(data, aes(fill = Region))+
  geom_sf()

enter image description here

Теперь, вот У меня вопрос: я хочу удалить внутренние границы этих региональных единиц более высокого порядка и оставить видимыми только их внешние границы. Карта со всеми внутренними границами визуально выглядит непривлекательно, как и карта, на которой удалены все границы:

ggplot(data, aes(fill = Region))+
  geom_sf(color = NA)

enter image description here

Я хочу управлять шейп-файлом изнутри R, чтобы исключить внутренние границы этих областей и оставить только их внешние границы. У меня нет никакого опыта работы с шейп-файлами, и я ищу понятное и не слишком сложное решение этой проблемы.

...