Я работаю над созданием карты с помощью Leaflet. На первом этапе вы заметите, что я делю каждый округ на четыре разных «региона». Затем я присоединяю его к другому географическому файлу небольших территорий в каждом настроенном «регионе». Что если бы я хотел, чтобы у каждого региона была своя цветовая палитра? Итак, скажем:
1 = красный
2 = синий
3 = зеленый
4 = оранжевый
Так что теперь не только каждый регион будет окрашен в соответствии со своим назначенным цветом, но «районы» в этих регионах также будут принимать этот цвет, и значение заливки также будет заполняться как таковое на основе веса.
library(tigris)
library(sf)
library(dplyr)
ct_counties <- tigris::counties("Connecticut") %>% st_as_sf() %>% mutate(region = case_when(COUNTYFP %in% c('001','005') ~ 1,
COUNTYFP %in% c('009','003') ~ 2,
COUNTYFP %in% c('007','013') ~ 3,
COUNTYFP %in% c('011','015') ~ 4))
ct_districts <- tigris::voting_districts("Connecticut") %>% st_as_sf()
ct_all <- ct_districts %>% st_join(ct_counties, by = "COUNTYFP10") %>% mutate(pop = sample(1000:10000, n(), replace = TRUE))
bins <- c(0, 10, 20, 50, 100, 200, 500, 1000, Inf)
pal <- colorBin("red", domain = ct_all$pop, bins = bins)
leaflet(ct_all) %>% addPolygons(fillColor = ~pal(pop),
weight = 4,
opacity = 1,
color = "white",
dashArray = "3",
fillOpacity = 0.7)