我该如何手动简单地在RMarkdown中格式化表格,以便在转换为HTML(使用knitr和markdown包)、PDF(使用pandoc和miktex)和docx(使用pandoc)时看起来良好?
我希望能够在RMarkdown中编写小型表格,这些表格不是由R函数生成的,并且在我经常使用的三种格式中都能呈现出良好的效果。到目前为止,我已经找到了一种在2个格式中看起来很好的格式,但3/3是否可能?
第一种格式在Knit HTML后看起来不错,但在PDF或docx中不好看。
四. 这在使用Knit HTML并生成PDF和docx文档后看起来很不错(赢家!),但这不是我想要的手动格式。
这是我制作PDF和docx文件的方法:
我希望能够在RMarkdown中编写小型表格,这些表格不是由R函数生成的,并且在我经常使用的三种格式中都能呈现出良好的效果。到目前为止,我已经找到了一种在2个格式中看起来很好的格式,但3/3是否可能?
第一种格式在Knit HTML后看起来不错,但在PDF或docx中不好看。
<table>
<tr>
<td>Eggs</td>
<td>Ham</td>
</tr>
<tr>
<td>Basil</td>
<td>Tomato</td>
</tr>
</table>
第二个问题,这个在Knit HTML之后看起来很好,但在PDF或docx中不好。
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
三. 这个在 Knit HTML 后看起来不太好,但在 PDF 和 docx 中效果很好(目前最佳选项)。
V1 Tweedledee Tweedledum
-------- -------------- ----------------
Age 14 14
Height 3'2" 3'2"
Politics Conservative Conservative
Religion "New Age" Syrian Orthodox
--------- -------------- ----------------
四. 这在使用Knit HTML并生成PDF和docx文档后看起来很不错(赢家!),但这不是我想要的手动格式。
```{r table1, echo=FALSE, message=FALSE, warnings=FALSE, results='asis'}
require(pander)
panderOptions('table.split.table', Inf)
set.caption("Data on cars")
pander(mtcars, style = 'rmarkdown')
```
这是我制作PDF和docx文件的方法:
filen <- "table" # name of my RMarkdown file without suffix
knit(paste0(filen,".Rmd"))
# make PDF
system(paste0("pandoc -s ", paste0(filen,".md"), " -t latex -o ", paste0(filen,".pdf"), " --highlight-style=tango -S"))
# make docx
system(paste0("pandoc -s ", paste0(filen,".md"), " -o ", paste0(filen,".docx"), " --highlight-style=tango -S"))
pander
可以从 R 对象生成出色的表格,但我想看看是否可以获得一个没有 R 对象的出色表格。例如,非常简单的文本表格。我找不到方法,所以也许制作一个我的简单表格的数据框,然后使用pander
是最好的选择。 - Benpander
),只需阅读我在上面链接的URL中关于语法的手册。或者只需运行pander(mtcars, style = 'rmarkdown')
并将其与你的解决方案进行比较,看看有什么区别。 - daroczig