考虑这个简单的例子
library(knitr)
library(kableExtra)
dt <- mtcars[1:5, 1:4]
# HTML table
kable(dt, format = "html", caption = "Demo Table") %>%
kable_styling(bootstrap_options = "striped",
full_width = F) %>%
add_header_above(c(" ", "Group 1" = 2, "Group 2[note]" = 2)) %>%
add_footnote(c("table footnote"))
在这里,我想要一个非常简单的东西。以pdf
(可能以管道方式)打印此表。我希望桌子看起来像这样。
我知道这是html
,但是我们能将html
页打印到Chrome中的pdf
吗?必须有一种方法(我希望)。我不想处理乳胶,也不想创建rnotebook
文档。渲染必须来自我裸露的.R脚本。那不可能吗?
有什么想法吗? 谢谢!
答案 0 :(得分:1)
这是解决部分生成pdf表格的问题的解决方案。您将需要在xtable
中调整表格的样式,以获得所需的斑马条纹和合并的列。一般来说,从html到pdf的转换不是那么简单,因此更好的解决方案是首先使用LaTeX生成表(我知道您不希望使用LaTeX,但至少使用R和{将其编译为pdf {1}}努力工作):
xtable
您应该查看https://cran.r-project.org/web/packages/xtable/vignettes/xtableGallery.pdf,以按照自己的方式进行样式设置。祝你好运。
编辑:
似乎您也可以使用library(xtable)
dt <- mtcars[1:5, 1:4]
filename <- tempfile(fileext = ".tex")
capture.output(print(xtable(dt)), file = filename)
foo <- readLines(filename)
writeLines(c("\\documentclass[hidelinks]{article}",
"\\begin{document}",
foo,
"\\end{document}"),
con = filename)
tools::texi2dvi(filename, pdf = TRUE)
:
kabelExtra