R-Markdown:修改PDF的默认表格输出

时间:2017-01-31 20:11:20

标签: r latex rstudio pdflatex

这真的是我,真的很困惑,无法在关于此的文档方面找到任何地方。

以下内容适用于在Rstudio中使用的Rmd。

所以说这个表:

Table Header  | Second Header
------------- | -------------
Table Cell    | Cell 2
Cell 3        | Cell 4 

当它被编译为latex(或pdf)时 输出是这个

enter image description here

但我想要的更多是:

enter image description here

或者像这样

enter image description here

即。包括垂直线或水平线。

现在,当我将其编译为html时,我可以通过包含我自己的css文件来修复一些样式。我可以用LaTEX输出做些什么吗?

2 个答案:

答案 0 :(得分:2)

我不知道如何单独使用markdown来做这件事,而且可能涉及创建某种模板。我从来没有采用过这样的解决方案,所以我无法真实地说出它是否可行。我已经寻求其他解决方案,为我生成必要的LaTeX代码HTML。下面的代码是一个工作的RMD,它将编织为PDF和HTML文件。

---
title: "Untitled"
output:
  pdf_document: null
  html_document: null
header-includes:
- \usepackage{amssymb}
- \usepackage{arydshln}
- \usepackage{caption}
- \usepackage{graphicx}
- \usepackage{hhline}
- \usepackage{longtable}
- \usepackage{multirow}
- \usepackage[dvipsnames,table]{xcolor}
---

```{r}
library(pixiedust)
options(pixie_float = FALSE)

DF <- data.frame(table_header = c("Table Cell", "Cell 3"),
                 second_header = c("Cell 2", "Cell 4"),
                 stringsAsFactors = FALSE)

Base <- 
  dust(DF) %>%
  medley_bw() %>% mimics the default bordering of standard markdown table
  sprinkle_colnames("Table Header", "Second Header") %>%
  sprinkle_table(pad = 3) # padding for HTML tables

# print the table with vertical line between columns
Base %>%
  sprinkle_table(cols = 1,
                 border = "right")

# print the table with horizontal line between rows
Base %>%
  sprinkle(rows = 1,
           border = "bottom")
```

结果表具有以下外观

Table with vertical column divider

Table with horizontal row divider

答案 1 :(得分:0)

另一种可能性:

AuthorizationException