【发布时间】:2017-05-13 01:45:23
【问题描述】:
我是 Shiny 的新手,我在 SO 上的类似问题的答案对我有帮助。
我想在下拉菜单上显示动态选择,具体取决于用户在单选按钮上选择的内容。但是下面的sn-p只能显示亚种的一种选择,一旦用户选择,首先#1动物类型,然后#2整体vs.亚种选择。
我有三个变量:#1。动物类型(狮子与老虎); #2。整体与亚种(单选按钮); #3。亚种(如果用户在#2 中选择“整体”,那么亚种应该等于“不适用”)。
仅供参考:
老虎亚种 = {孟加拉、西伯利亚}
狮子亚种 = {巴巴里、西南非洲、德兰士瓦}
感谢任何帮助。谢谢。
library(shiny)
if (interactive()) {
ui <- fluidPage(
selectizeInput("VarAnimal",
label = "Animal",
choices = c("Tiger", "Lion"),
selected = "Tiger"),
radioButtons("VarWholeOrSub",
"Whole or Sub",
choices = c("Whole species", "Subspecies"),
selected = "Whole species"),
selectizeInput("VarSubspecies",
label = "Subspecies",
choices = c("Not Applicable", "Bengal", "Siberian", "Barbary", "Southwest African", "Transvaal"),
selected = "")
)
server <- function(input, output, session) {
observe({
x <- input$VarWholeOrSub
if (input$VarWholeOrSub == "Whole species"){
x <- c("Not Applicable")} else{
x <- ifelse(input$VarAnimal == "Tiger", c("Bengal", "Siberian"), c("Barbary", "Southwest African", "Transvaal"))
}
updateSelectizeInput(session,
"VarSubspecies",
choices = x)
})
}
shinyApp(ui, server)
}
【问题讨论】:
标签: r user-interface shiny