下载有光泽的tabpanel的活动数据表

时间:2016-06-29 13:32:31

标签: r list datatable shiny tabpanel

我是一个新的闪亮用户,我在创建自己的闪亮应用程序时遇到了一些问题。为了说明我当前的方法,我们已经修剪了代码片段。

#ui.r
shinyUI(fluidPage(
sidebarLayout(
mainPanel(
  tabsetPanel(
    tabPanel(
      selectInput("HM", "hour means",
                  c("A" = 1,
                    "B" = 2,
                    "C" = 3,
                    )),
      dataTableOutput('HOUR_MEAN')
    ),
    tabPanel(
      selectInput("DM", "day means",
                  c("A" = 1,
                    "B" = 2,
                    "C" = 3,
                    )),
      dataTableOutput('DAY_MEAN')
    )
  )))))
###server.r
shinyServer(function(input, output) {
  output$HOUR_MEAN<-renderDataTable({
  L<-myfun(mydata)
  a<-input$HM
  L[[1]][[eval(parse(text=a))]]
  })

  output$DAY_MEAN<-renderDataTable({
  L<-myfun2(mydata)
  a<-input$DM
  L[[2]][[eval(parse(text=a))]]
  })

  })

现在我想要的是在我选择不同的面板和tabpanel的不同选择时下载数据表? 感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

试试这个

ui part

fluidRow(  downloadButton('download_hour', 'download data'))) # in a tabitem

服务器部分

 output$download_hour = downloadHandler('mydataoutput.csv', content =    function(file) {
s = input$HOUR_MEAN_rows_all  
write.table(mydata[s, ], file  ,sep=";",row.names = F)
 })