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
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)