ComenzarEmpieza gratis

Temas

Shiny facilita personalizar el tema de una aplicación. Las funciones de UI de Shiny utilizan Twitter Bootstrap, un framework muy popular para crear aplicaciones web. Bootswatch amplía Bootstrap y permite aplicar estilos a una aplicación con muy pocos cambios en el código.

En este ejercicio, añadirás un panel de título a tu app, usarás el selector de temas para probar distintos temas y, después, aplicarás el tema que elijas.

Este ejercicio forma parte del curso

Creación de aplicaciones web con Shiny en R

Ver curso

Instrucciones del ejercicio

  • Ejecuta la app y usa el selector de temas en la parte superior derecha para explorar distintos temas de Bootswatch.
  • Añade un título adecuado a la página.
  • Sustituye themeSelector() por el tema que prefieras.

Ejercicio interactivo práctico

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

ui <- fluidPage(
  # CODE BELOW: Add a titlePanel with an appropriate title
  
  # REPLACE CODE BELOW: with theme = shinythemes::shinytheme("")
  shinythemes::themeSelector(),
  sidebarLayout(
    sidebarPanel(
      selectInput('name', 'Select Name', top_trendy_names$name)
    ),
    mainPanel(
      tabsetPanel(
        tabPanel('Plot', plotly::plotlyOutput('plot_trendy_names')),
        tabPanel('Table', DT::DTOutput('table_trendy_names'))
      )
    )
  )
)

server <- function(input, output, session){
  # Function to plot trends in a name
  plot_trends <- function(){
     babynames %>% 
      filter(name == input$name) %>% 
      ggplot(aes(x = year, y = n)) +
      geom_col()
  }
  output$plot_trendy_names <- plotly::renderPlotly({
    plot_trends()
  })
  
  output$table_trendy_names <- DT::renderDT({
    babynames %>% 
      filter(name == input$name)
  })
}

shinyApp(ui = ui, server = server)
Editar y ejecutar código