Advertisement
Guest User

Untitled

a guest
Feb 21st, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.07 KB | None | 0 0
  1. library(tigris)
  2. library(spdplyr)
  3. library(leaflet)
  4.  
  5. states <- states(cb=T)
  6.  
  7. binpal <- colorBin(c("red", "yellow", "green"), -5:5, c(-5, -0.5, 0.5, 5), pretty = FALSE)
  8.  
  9.  
  10. # Subset to less states for example
  11. states_subset <- states[5:10,]
  12.  
  13. state_names <- states_subset$NAME
  14.  
  15. # Generate random measure data
  16. set.seed(100)
  17.  
  18. df <- data.frame(cycle = 1, state_names, val =rnorm(6))
  19.  
  20. for (i in 2:5){df <- df %>% rbind(data.frame(cycle = i, state_names, val = rnorm(6)))}
  21.  
  22.  
  23. # Join the data and produce the map 1 layer per cycle
  24. state_merged <- states_subset %>% merge(df, by.x = "NAME", by.y = "state_names", duplicateGeoms = TRUE)
  25.  
  26. m <- leaflet() %>%
  27. addTiles()
  28.  
  29. for (i in 1:5){
  30. temp <- state_merged %>% filter(cycle == i)
  31.  
  32. m <- m %>%
  33. addPolygons(
  34. data = temp,
  35. color = ~binpal(val),
  36. label = ~val,
  37. group = as.character(i)
  38. )
  39.  
  40. }
  41.  
  42. m <- m %>%
  43. addLayersControl(
  44. overlayGroups = as.character(1:5),
  45. options = layersControlOptions(collapsed = TRUE),
  46. position = "topleft"
  47. ) %>% hideGroup(as.character(1:4))
  48.  
  49. m
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement