Description Usage Arguments Details Value Server value Note See Also Examples
Create a select list that can be used to choose a single or multiple items from the column names of a data frame.
1 2 3 4 5 6 7 8 9 10 11 12 |
inputId |
The |
label |
Display label for the control, or |
data |
A data frame. Used to retrieve the column names as choices for a |
selected |
The initially selected value (or multiple values if |
multiple |
Is selection of multiple items allowed? |
selectize |
Whether to use selectize.js or not. |
width |
The width of the input, e.g. |
size |
Number of items to show in the selection box; a larger number
will result in a taller box. Not compatible with |
... |
Arguments passed to |
options |
A list of options. See the documentation of selectize.js
for possible options (character option values inside |
By default, varSelectInput() and selectizeInput() use the
JavaScript library selectize.js
(https://github.com/selectize/selectize.js) to instead of the basic
select input element. To use the standard HTML select input element, use
selectInput() with selectize=FALSE.
A variable select list control that can be added to a UI definition.
The resulting server input value will be returned as:
A symbol if multiple = FALSE. The input value should be
used with rlang's rlang::!!(). For example,
ggplot2::aes(!!input$variable).
A list of symbols if multiple = TRUE. The input value
should be used with rlang's rlang::!!!() to expand
the symbol list as individual arguments. For example,
dplyr::select(mtcars, !!!input$variabls) which is
equivalent to dplyr::select(mtcars, !!input$variabls[[1]], !!input$variabls[[2]], ..., !!input$variabls[[length(input$variabls)]]).
The variable selectize input created from varSelectizeInput() allows
deletion of the selected option even in a single select input, which will
return an empty string as its value. This is the default behavior of
selectize.js. However, the selectize input created from
selectInput(..., selectize = TRUE) will ignore the empty string
value when it is a single choice input and the empty string is not in the
choices argument. This is to keep compatibility with
selectInput(..., selectize = FALSE).
Other input elements:
actionButton(),
checkboxGroupInput(),
checkboxInput(),
dateInput(),
dateRangeInput(),
fileInput(),
numericInput(),
passwordInput(),
radioButtons(),
selectInput(),
sliderInput(),
submitButton(),
textAreaInput(),
textInput()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | ## Only run examples in interactive R sessions
if (interactive()) {
library(ggplot2)
# single selection
shinyApp(
ui = fluidPage(
varSelectInput("variable", "Variable:", mtcars),
plotOutput("data")
),
server = function(input, output) {
output$data <- renderPlot({
ggplot(mtcars, aes(!!input$variable)) + geom_histogram()
})
}
)
# multiple selections
## Not run:
shinyApp(
ui = fluidPage(
varSelectInput("variables", "Variable:", mtcars, multiple = TRUE),
tableOutput("data")
),
server = function(input, output) {
output$data <- renderTable({
if (length(input$variables) == 0) return(mtcars)
mtcars %>% dplyr::select(!!!input$variables)
}, rownames = TRUE)
}
)
## End(Not run)
}
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.