Додайте заголовок до графіка: текстове поле
У Shiny щойно користувач змінює значення будь-якого інпуту, Shiny негайно робить поточне значення цього інпуту доступним у сервері через аргумент input у функції сервера. Ви можете отримати значення будь-якого інпуту за допомогою input$<inputId>.
Щоб задати початкове типове значення для текстового інпуту, використовуйте аргумент value.
Ця вправа є частиною курсу
Case Studies: створення вебзастосунків із Shiny в R
Інструкції до вправи
Наведений застосунок Shiny будує графік ВВП на душу населення проти тривалості життя країн із набору даних gapminder. Ваше завдання — додати текстовий інпут, який дає змогу змінювати заголовок графіка. Зокрема:
- Додайте до UI текстовий інпут з ID "title", міткою "Title" і типовим значенням "GDP vs life exp".
- У коді сервера зробіть так, щоб заголовок графіка завжди відповідав поточному значенню цього інпуту: розмістіть заголовок усередині функції
ggtitle()(рядок 24).
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Load the ggplot2 package for plotting
library(ggplot2)
# Define UI for the application
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
# Add a title text input
___(___, ___, ___)
),
mainPanel(
plotOutput("plot")
)
)
)
# Define the server logic
server <- function(input, output) {
output$plot <- renderPlot({
ggplot(gapminder, aes(gdpPercap, lifeExp)) +
geom_point() +
scale_x_log10() +
# Use the input value as the plot's title
ggtitle(___)
})
}
# Run the application
shinyApp(ui = ui, server = server)