НачатьНачать бесплатно

Создание цветовой палитры с помощью colorFactor

До сих пор мы использовали цвет только для настройки стиля карты. С помощью colorFactor() можно создать цветовую палитру, которая сопоставляет цвета уровням факторной переменной.

pal <- 
   colorFactor(palette = c("blue", "red", "green"), 
               levels = c("Public", "Private", "For-Profit"))

m %>% 
    addCircleMarkers(color = ~pal(sector_label))

Почему эта конкретная цветовая палитра может оказаться неудачным выбором?

Если вас интересует окраска карты на основе непрерывной переменной, обратите внимание на colorNumeric().

pal <- colorNumeric(palette = "RdBu", domain = c(25:50))

ipeds %>% 
    leaflet() %>% 
        addProviderTiles("CartoDB")  %>% 
        addCircleMarkers(radius = 2, color = ~pal(lat))

Это упражнение является частью курса

Интерактивные карты с leaflet в R

Посмотреть курс

Инструкции к упражнению

  • Создайте цветовую палитру pal для значений переменной sector_label с помощью colorFactor(), используя цвета "red", "blue" и "#9b4a11".
  • Добавьте круговые маркеры, окрашивающие колледжи с помощью pal() и значений переменной sector_label.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Make a color palette called pal for the values of `sector_label` using `colorFactor()`  
# Colors should be: "red", "blue", and "#9b4a11" for "Public", "Private", and "For-Profit" colleges, respectively
pal <- ___(palette = c("red", "blue", ___), 
                   levels = c("Public", "Private", "For-Profit"))

# Add circle markers that color colleges using pal() and the values of sector_label
map2 <- 
    map %>% 
        addCircleMarkers(data = ca, radius = 2, 
                         color = ~pal(sector_label), 
                         label = ~paste0(name, " (", sector_label, ")"))

# Print map2
map2
Редактировать и запускать код