【发布时间】:2020-07-09 04:54:33
【问题描述】:
我正在尝试使用 R Shiny 将 kable 表(乳胶)导出到 .pdf 文件。
这是我用来生成 kable 乳胶表的代码:
x<-kable(overall, align = c('l', 'c', 'c', 'c', 'c', 'c', 'c'), "latex", booktabs = T,
caption = "Sample Table",
escape = FALSE)%>%
kable_styling(latex_options = c("striped")) %>%
add_header_above(c(" " = 1, 'Group 1' = 3, 'Group 2' = 3))%>%
landscape()
save_kable(x, 'SampleTable.pdf')
我可以在独立的 R 程序中导出它,但我想用 R Shiny 复制导出。我试图将代码包装在 downloadHandler 函数中,但它不起作用。
示例代码:
output$export = downloadHandler(
filename = function() {"sampleTable.pdf"},
content = function(file) {
x<-kable(overall, align = c('l', 'c', 'c', 'c', 'c', 'c', 'c'), "latex", booktabs = T,
caption = "Sample Table",
escape = FALSE)%>%
kable_styling(latex_options = c("striped")) %>%
add_header_above(c(" " = 1, 'Group 1' = 3, 'Group 2' = 3))%>%
landscape()
save_kable(x, file)
}
)
任何见解将不胜感激。
【问题讨论】:
-
当我以这种方式保存 pdf 文件时,我在文件函数中调用
grDevices::pdf(file); plot(x); grDevices::dev.off()。它可能与save_kable相同,因此请尝试将返回的x替换为save_kable(x, file)。 -
这似乎不起作用。
标签: r pdf shiny kable kableextra