使用radioButtons显示数据表中的列(闪亮)

时间:2017-11-04 05:16:35

标签: r shiny

我正在尝试使用用户可以更改的radioButtons在数据表中显示列。

到目前为止,我的代码是:

UI:

fluidRow(column(4, radioButtons("radio","Choose:",c("A","B"))))),
fluidRow(DT::dataTableOutput("table"))

服务器

输出

$table <- DT::renderDataTable({
  DT::datatable({table

  if (input$radio != "A") {
    table <- table[,1:5]
  }

  if (input$radio != "B") {
    table <- table[,6:10)]
  }

  table

})},rownames = FALSE,options = list(lengthMenu = c(25,50,100)))

当我运行应用程序时,它显示的是带有A和B但没有数据表的radioButtons。

1 个答案:

答案 0 :(得分:0)

您的代码存在很多问题。我修复了你的代码并在mtcars数据集上进行了测试。

library(shiny)

ui <- fluidPage(

  sidebarLayout(
     sidebarPanel(
        radioButtons("radio","Choose:", choices = list("A" =  "A", "B" = "B"))
     ),

     mainPanel(
       dataTableOutput("table")
     )
   )
)

server <- function(input, output) {

  output$table <- renderDataTable({
    if (input$radio == "A") {
       table1 <- mtcars[,1:5]
    }
    else {
       table1 <- mtcars[,6:10]
    }
    table1
  })
}

# Run the application 
shinyApp(ui = ui, server = server)

如果您运行此应用程序,您将看到它根据您选择的单选按钮显示数据表。