对于renderDataTable,使用R Shiny中的TableTools for DataTables
对于这个问题,我使用了这里找到的R Shiny教程示例:
http://rstudio.github.io/shiny/tutorial/#datatables
运行本教程中的代码将在下面的URL中呈现应用程序
http://glimmer.rstudio.com/yihui/12_datatables/
我想知道的是,一旦呈现数据表,我们可以使用R Shiny中的renderDataTable()函数内置的功能来搜索它,但是可以使用renderDataTable()将已过滤的数据下载到数据表中。功能?
例如,如果在数据表搜索栏中输入“非常好”,则只显示“非常好”的“剪切”字段中的记录。 那么我将如何下载该数据集?
我将如何调用TableTools.js复制,打印,保存等按钮到这个代码?
谢谢!
您需要链接到正确的库版本。 链接到data.table 1.9.4可以在http://cdnjs.com/libraries/datatables找到。 链接到桌面工具2.1.5,网址为http://cdnjs.com/libraries/datatables-tabletools
library(shiny)
library(ggplot2)
runApp(
list(ui = basicPage(
h1('Diamonds DataTable with TableTools'),
tagList(
singleton(tags$head(tags$script(src='//cdnjs.cloudflare.com/ajax/libs/datatables/1.9.4/jquery.dataTables.min.js',type='text/javascript'))),
singleton(tags$head(tags$script(src='//cdnjs.cloudflare.com/ajax/libs/datatables-tabletools/2.1.5/js/TableTools.min.js',type='text/javascript'))),
singleton(tags$head(tags$script(src='//cdnjs.cloudflare.com/ajax/libs/datatables-tabletools/2.1.5/js/ZeroClipboard.min.js',type='text/javascript'))),
singleton(tags$head(tags$link(href='//cdnjs.cloudflare.com/ajax/libs/datatables-tabletools/2.1.5/css/TableTools.min.css',rel='stylesheet',type='text/css'))),
singleton(tags$script(HTML("if (window.innerHeight < 400) alert('Screen too small');")))
),
dataTableOutput("mytable")
)
,server = function(input, output) {
output$mytable = renderDataTable({
diamonds[,1:6]
}, options = list(
"sDom" = 'T<"clear">lfrtip',
"oTableTools" = list(
"sSwfPath" = "//cdnjs.cloudflare.com/ajax/libs/datatables-tabletools/2.1.5/swf/copy_csv_xls.swf",
"aButtons" = list(
"copy",
"print",
list("sExtends" = "collection",
"sButtonText" = "Save",
"aButtons" = c("csv","xls")
)
)
)
)
)
})
)
链接地址: http://www.djcxy.com/p/19865.html
上一篇: Use TableTools for DataTables in R Shiny for renderDataTable