IniziaInizia gratis

Aggiungi colori al tuo grafico: pulsanti di scelta

I pulsanti di scelta si usano quando vuoi presentare diverse opzioni all'utente e chiedergli di sceglierne una. Hanno un parametro choices che definisce le diverse opzioni tra cui l'utente può scegliere e un argomento selected che definisce quale opzione è selezionata inizialmente. Nota che non esiste un parametro value, anche se puoi considerare selected come avente un ruolo simile.

Questo esercizio fa parte del corso

Casi di studio: creare applicazioni web con Shiny in R

Visualizza il corso

Istruzioni dell'esercizio

Il codice della Shiny app dell'esercizio precedente è fornito. Il tuo compito è aggiungere pulsanti di scelta che permettano all'utente di selezionare il colore da usare per il grafico. In particolare:

  • Aggiungi alla UI dei pulsanti di scelta con ID "color", etichetta "Point color" e quattro opzioni: "blue", "red", "green", "black".
  • Aggiungi il codice al server in modo che i punti del grafico abbiano il colore selezionato nei pulsanti di scelta (riga 22).

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Define UI for the application
ui <- fluidPage(
  sidebarLayout(
    sidebarPanel(
      textInput("title", "Title", "GDP vs life exp"),
      numericInput("size", "Point size", 1, 1),
      checkboxInput("fit", "Add line of best fit", FALSE),
      # Add radio buttons for colour
      ___("color", ___, ___)
    ),
    mainPanel(
      plotOutput("plot")
    )
  )
)

# Define the server logic
server <- function(input, output) {
  output$plot <- renderPlot({
    p <- ggplot(gapminder, aes(gdpPercap, lifeExp)) +
      # Use the value of the color input as the point colour
      geom_point(size = input$size, col = input$___) +
      scale_x_log10() +
      ggtitle(input$title)
    
    if (input$fit) {
      p <- p + geom_smooth(method = "lm")
    }
    p
  })
}

# Run the application
shinyApp(ui = ui, server = server)
Modifica ed esegui il codice