2016-09-23 2 views
0

Я пытаюсь распечатать таблицу при выборе флажка. Это прекрасно работает, но я не хочу печатать все столбцы, т. Е. Только «имя» и «цвет». К сожалению, я не могу найти команду для отображения определенных столбцов. Я думал, что input$color может решить проблему, но я не смог запустить скрипт правильно. Вот мой минимальный пример:R Shiny: Таблица печати с выбранными столбцами

mydat <- data.table(id=c(1,2,3,4), 
       londd=c(20, 38, 96, 32), 
       latdd=c(60, 56, 30, 31), 
       material=c("stone", "water,sand", "sand", "wood"), 
       application=c("a","b","c","d"), 
       name=c("1","2","3","4"), 
       color=c("red","green","blue","yellow")) 

#Set up ui 
ui <- shinyUI(fluidPage(
sidebarPanel(h5("", width=2), 
     checkboxGroupInput(inputId="MatFlag",label=h4("Material"), 
      choices=setNames(object=c("stone","water","sand", "wood"), 
      nm=c("stone", "water", "sand", "wood")) 
      ), 
      checkboxGroupInput(inputId="AppFlag",label=h4("Application"), 
      choices=setNames(object=c("a","b","c","d"), 
      nm=c("a","b","c","d")) 
      ), 
      position="left"), 

#App mainPanel content and styles 
mainPanel("Plot_and_table","Plot and Table", 
"button_plot_and_table",size="large",dataTableOutput("TestTable")))) 

#Set up server 
server <- function(input, output){ 

#Filter data 
datFilt <- reactive({ 
MatSearch <- paste0(c('xxx',input$MatFlag),collapse = "|") 
MatSearch <- gsub(",","|",MatSearch) 
mydat[grepl(MatSearch,material) & application %in% input$AppFlag] 
}) 

output$TestTable <- renderDataTable({datFilt() 
}, options = list(pageLength=5)) 


} 

#Run app 
shinyApp(ui = ui, server = server) 

ответ

0

Если только Подменю все, что вы хотите, это должно быть прекрасно:

datFilt <- reactive({ 
    MatSearch <- paste0(c('xxx',input$MatFlag),collapse = "|") 
    MatSearch <- gsub(",","|",MatSearch) 
    testdata <- mydat[grepl(MatSearch,material) & application %in% input$AppFlag] 
    testdata[,c("name","color"), with=FALSE] 
    }) 
+0

Да, это код, мне нужно. Большое спасибо! – ChMoe

Смежные вопросы