Update a multiColorPicker input on the client
Source:R/multiColorPicker.R
updateMultiColorPicker.RdChange the color values assigned to groups in an existing multiColorPicker input from the server side.
Examples
if (interactive()) {
library(shiny)
groups <- c("setosa", "virginica", "versicolor")
ui <- fluidPage(
multiColorPicker(
"species_cols",
"Species colors",
groups = groups,
selected_palette = "dittoColors"
),
actionButton("randomize", "Randomize colors"),
verbatimTextOutput("chosen")
)
server <- function(input, output, session) {
output$chosen <- renderPrint(input$species_cols)
observeEvent(input$randomize, {
new_colors <- setNames(
sprintf("#%06X", sample(0xFFFFFF, length(groups))),
groups
)
updateMultiColorPicker(session, "species_cols", new_colors)
})
}
shinyApp(ui, server)
}