Teman
Shiny gör det enkelt att anpassa temat i en app. UI-funktionerna i Shiny använder sig av Twitter Bootstrap, ett populärt ramverk för att bygga webbapplikationer. Bootswatch bygger vidare på Bootstrap och gör det mycket enkelt att byta utseende på en applikation med minimala kodändringar.
I den här övningen lägger du till en titelrad i din app, använder temaväljaren för att utforska olika teman och väljer sedan ett tema att tillämpa.
Den här övningen är en del av kursen
Bygg webbapplikationer med Shiny i R
Övningsinstruktioner
- Kör appen och använd temaväljaren längst upp till höger för att utforska olika Bootswatch-teman.
- Lägg till en lämplig titel på sidan.
- Ersätt
themeSelector()med ett tema du väljer.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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)