Střelby: úprava výstupu
V tomto cvičení rozšíříš Shiny aplikaci, kterou jsi sestavil/a dříve, tak aby se na interaktivní mapě zobrazovaly červené kruhy s velikostí odpovídající počtu obětí a po kliknutí na kruh se zobrazil souhrn daného případu. Tvoje aplikace bude vypadat podobně jako na tomto snímku.

Toto cvičení je součástí kurzu
Tvorba webových aplikací se Shiny v R
Pokyny k cvičení
- Uprav reaktivní výraz
rval_mass_shootingstak, aby byl dataset filtrován podle počtu obětí (nb_fatalities) a rozsahu dat (date_range) zvoleného uživatelem. - Uprav kód uvnitř
addCircleMarkers()tak, aby byl parametrradiusnamapován nafatalitiesa parametrpopupnasummary. Parametrplze namapovat na polefpomocíp = ~ f.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
ui <- bootstrapPage(
theme = shinythemes::shinytheme('simplex'),
leaflet::leafletOutput('map', height = '100%', width = '100%'),
absolutePanel(top = 10, right = 10, id = 'controls',
sliderInput('nb_fatalities', 'Minimum Fatalities', 1, 40, 10),
dateRangeInput('date_range', 'Select Date', "2010-01-01", "2019-12-01")
),
tags$style(type = "text/css", "
html, body {width:100%;height:100%}
#controls{background-color:white;padding:20px;}
")
)
server <- function(input, output, session) {
rval_mass_shootings <- reactive({
# MODIFY CODE BELOW: Filter mass_shootings on nb_fatalities and
# selected date_range.
mass_shootings
})
output$map <- leaflet::renderLeaflet({
rval_mass_shootings() %>%
leaflet() %>%
addTiles() %>%
setView( -98.58, 39.82, zoom = 5) %>%
addTiles() %>%
addCircleMarkers(
# CODE BELOW: Add parameters popup and radius and map them
# to the summary and fatalities columns
fillColor = 'red', color = 'red', weight = 1
)
})
}
shinyApp(ui, server)