ComenzarEmpieza gratis

Añade un control deslizante para seleccionar el año

Los controles deslizantes son ideales para entradas numéricas. Sirven tanto para que los usuarios elijan un valor dentro de un rango como para que seleccionen un valor fijo de un conjunto de opciones, cuando quieres ser más creativo que usando un selectInput().

Ajusta tu app que muestra los 10 nombres principales de un año añadiendo un control deslizante para seleccionar un año específico disponible en babynames.

Este ejercicio forma parte del curso

Creación de aplicaciones web con Shiny en R

Ver curso

Instrucciones del ejercicio

  • Añade una entrada tipo control deslizante llamada "year" para que los usuarios seleccionen un año entre 1900 y 2010, con 1900 como valor predeterminado.
  • Actualiza el código del servidor para obtener los 10 nombres principales del año seleccionado en lugar de usar solo 1900.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

ui <- fluidPage(
  titlePanel("What's in a Name?"),
  # Add select input named "sex" to choose between "M" and "F"
  selectInput('sex', 'Select Sex', choices = c("F", "M")),
  # CODE BELOW: Add slider input named 'year' to select years  (1900 - 2010)

  # 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 %>% 
      filter(sex == input$sex) %>% 
    # MODIFY CODE BELOW: Filter for the selected year
      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)
Editar y ejecutar código