Змінюємо розмір точок: числове поле введення
Числові поля введення мають кілька додаткових аргументів, яких немає в текстових полях, зокрема min і max, що задають мінімальне та максимальне допустимі числа.
Зверніть увагу: коли у коді сервера звертаються до значення елемента введення, Shiny «розуміє», який тип введення використано, і відповідно повертає об'єкт потрібного типу. Тобто, якщо у вас є числове поле введення з ID «foo», тоді input$foo повертатиме числове значення.
Ця вправа є частиною курсу
Case Studies: створення вебзастосунків із Shiny в R
Інструкції до вправи
Наведено код Shiny‑додатка з попередньої вправи. Ваше завдання — додати числове поле введення, щоб користувач міг змінювати розмір точок на графіку. Зокрема:
- Додайте до UI числове поле введення з ID «size», міткою «Point size», початковим значенням 1 та мінімальним значенням 1.
- Додайте код у сервер, щоб це числове поле визначало розмір точок на графіку (рядок 20).
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Define UI for the application
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
textInput("title", "Title", "GDP vs life exp"),
# Add a size numeric input
___
),
mainPanel(
plotOutput("plot")
)
)
)
# Define the server logic
server <- function(input, output) {
output$plot <- renderPlot({
ggplot(gapminder, aes(gdpPercap, lifeExp)) +
# Use the size input as the plot point size
geom_point(size = ___) +
scale_x_log10() +
ggtitle(input$title)
})
}
# Run the application
shinyApp(ui = ui, server = server)