Как изобразить столицы на существующей карте в г. - PullRequest
0 голосов
/ 31 октября 2018

Я сделал карту, используя ggplot (geom_map). Мой код выглядит примерно так:

gg <- ggplot()
gg <- gg + 
  geom_map(data=county, map=county,
           aes(long, lat, map_id=region),
           color="grey", fill=NA, size=0.15)

gg <- gg + 
  geom_map(data=state, map=state,
           aes(long, lat, map_id=region),
           color="black", fill=NA, size=0.5) +
  geom_label_repel(data = states, 
                   aes(long, lat, label = region), 
                   size = 2)

Как мне добавить все столицы США, map.cities возможно?

1 Ответ

0 голосов
/ 31 октября 2018

Вы можете использовать данные из библиотеки maps, называемые us.cities, которые обозначают в ней заглавные буквы. Вы можете использовать geom_label в ggplot, но, как вы узнали, geom_label_repel из ggrepel выглядит лучше.

library(ggplot2)
library(maps)
library(ggrepel)

data(us.cities)
capitals <- subset(us.cities, capital == 2)
capitals_notAKHI <- capitals[!(capitals$country.etc %in% "AK" | capitals$country.etc %in% "HI"), ] #exclude Alaska and Hawaii
capitals_notAKHI$city <- sub(' [^ ]*$','',capitals_notAKHI$name) # split out city for the label

ggplot(capitals_notAKHI, aes(long, lat)) +
  borders("state") +
  geom_point() +
  coord_quickmap() +
  geom_label_repel(aes(label = city), size = 2)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...