ÎncepețiÎncepe gratuit

Adaugă un input de tip select

Adăugarea unui input într-o aplicație Shiny este un proces în doi pași: mai întâi adaugi o funcție ___Input("x") în UI, apoi accesezi valoarea sa în server folosind input$x.

De exemplu, dacă vrei ca utilizatorii să aleagă un animal dintr-o listă, poți folosi selectInput și să referi valoarea aleasă ca input$animal:

selectInput(
  'animal', 
  'Select Animal', 
  selected = 'Cat', 
  choices = c('Dog', 'Cat')
)

În acest exercițiu, vei construi o aplicație Shiny care le permite utilizatorilor să vizualizeze cele mai populare 10 nume după sex, adăugând un input prin care pot alege sexul.

Acest exercițiu face parte din cursul

Crearea aplicațiilor web cu Shiny în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Adaugă un input de tip select numit "sex" care să le permită utilizatorilor să aleagă între "M" și "F", cu valoarea implicită "F".
  • Actualizează codul din server pentru a obține cele mai populare 10 nume pentru sexul ales, nu doar pentru "F".

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

ui <- fluidPage(
  titlePanel("What's in a Name?"),
  # CODE BELOW: Add select input named "sex" to choose between "M" and "F"

  # Add plot output to display top 10 most popular names
  plotOutput('plot_top_10_names')
)

server <- function(input, output, session){
  # Render plot of top 10 most popular names
  output$plot_top_10_names <- renderPlot({
    # Get top 10 names by sex and year
    top_10_names <- babynames %>% 
      # MODIFY CODE BELOW: Filter for the selected sex
      filter(sex == "F") %>% 
      filter(year == 1900) %>% 
      slice_max(prop, n = 10)
    # Plot top 10 names by sex and year
    ggplot(top_10_names, aes(x = name, y = prop)) +
      geom_col(fill = "#263e63")
  })
}

shinyApp(ui = ui, server = server)
Editează și rulează codul