Shiny03---实现单选框联动

先上代码,其他的再说

代码

library(shiny)
library(DT)
ui <- fluidPage(
    sidebarPanel(
      #侧边栏的控制键
      width = 3,#设置侧边栏的宽度
    p("The checkbox group controls the select input"),
    radioButtons("inCheckboxGroup", "Input checkbox",
                c("Item A", "Item B", "Item C")),
    radioButtons("inSelect", "Select input",
                 c("Item A", "Item B", "Item C"))
  ),
  mainPanel(DT::dataTableOutput('tbl'))
  )
  
  server <- function(input, output, session) {
    observe({
      x <- input$inCheckboxGroup
      
      # Can use character(0) to remove all choices
      if (is.null(x)){
        x <- character(0) 
      }
      
      if (x == "Item A") {
        y = c("A1", "A2", "A3")
      } else if (x == "Item B") {
        y = c("B1", "B2", "B3")
      }else if (x == "Item C") {
        y = c("C1", "C2", "C3")
      }
      # Can also set the label and select items
      updateRadioButtons(session, "inSelect",
                         label = paste("Select input label", length(x)),
                         choices = y
      )
     output$tbl <- renderDataTable(
       if(input$inSelect=="A1"){
         iris
       }else if(input$inSelect=="B1"){
         mtcars
       }
     )
    })
  }
  
  shinyApp(ui, server)

结果

这里写图片描述
这里写图片描述
这里写图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值