Zmiana rozmiaru punktów: dane liczbowe
Pola liczbowe mają kilka dodatkowych argumentów, których nie mają pola tekstowe – na przykład min i max, które określają minimalną i maksymalną wartość do wyboru.
Zwróć uwagę, że gdy kod serwera odczytuje wartość pola, Shiny automatycznie rozpoznaje typ użytego pola i zwraca odpowiedni typ obiektu. Oznacza to, że jeśli masz pole liczbowe o ID "foo", to input$foo zwróci wartość liczbową.
To ćwiczenie jest częścią kursu
Studia przypadków: tworzenie aplikacji webowych w Shiny w R
Instrukcje do ćwiczenia
Kod aplikacji Shiny z poprzedniego ćwiczenia jest już dostępny. Twoim zadaniem jest dodanie pola liczbowego, które pozwoli użytkownikowi zmieniać rozmiar punktów na wykresie. Konkretnie:
- Dodaj pole liczbowe do UI z ID "size", etykietą "Point size", domyślną wartością 1 i wartością minimalną 1.
- Dodaj kod do serwera, który sprawi, że pole liczbowe będzie kontrolować rozmiar punktów na wykresie (wiersz 20).
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)