Kitlesel silahlı saldırılar: çıktıyı değiştir
Bu egzersizde, daha önce oluşturduğun Shiny uygulamasını genişleteceksin. Kullanıcı etkileşimli haritada, ölü sayısına göre boyutlandırılmış kırmızı daireler görecek ve daireye tıkladığında olayın özeti görüntülenecek. Uygulaman, bu ekran görüntüsündeki görsele benzeyecek.

Bu egzersiz
R ile Shiny Kullanarak Web Uygulamaları Geliştirme
kursunun bir parçasıdırEgzersiz talimatları
rval_mass_shootingsadlı tepkisel ifadeyi güncelle ve veri kümesini kullanıcının seçtiği ölüm sayısına (nb_fatalities) ve tarih aralığına (date_range) göre filtrele.addCircleMarkers()içindeki kodu güncelle; daireninradiusdeğerinifatalitiesdeğişkenine,popupparametresini isesummaryalanına eşle. Bir parametrepyi bir alanfep = ~ file eşleyebileceğini unutma.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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)