如何使用knitr生成GitHub风格的降价文件?

时间:2015-02-24 03:48:35

标签: r knitr pandoc r-markdown github-flavored-markdown

我喜欢使用 knitr 生成动态报告,并使用Gi​​tHub与我的同事分享。我通常做的是编织我的Rmarkdown脚本 - knit ('myfile.Rmd') - 并生成一个可以在GitHub上直接看到的降价(myfile.md)版本。 GitHub上的markdown文件对我来说比knitr使用pandoc生成的HTML文件好得多。

除非我想要显示表格,否则此工作流程通常无瑕疵。目前我在R-chunk中使用kable,如果最终产品是HTML文件,那就非常好用。

我的R-chunk看起来像:

```{r}
library (knitr)
data (cars)
kable (head (cars))
```

从控制台调用kable时,我得到了我想要的管道表:

| speed| dist|
|-----:|----:|
|     4|    2|
|     4|   10|
|     7|    4|
|     7|   22|

GitHub很好地显示了

但是,knit('myfile.Rmd')myfile.md中生成的内容(从R-chunk调用kable时)是一个简单的表

speed   dist
------  -----
    4      2
    4     10
    7      4
    7     22

GitHub很好地显示了

有没有办法让我的降价文件中的表与GitHub风味的降价兼容?也许有knitrkable()选项,我不知道?或者可能有kable的替代方法可以达到预期的效果吗?

2 个答案:

答案 0 :(得分:4)

Pandoc可以使用-t markdown_github输出到github风格的降价标记。使用knitr:

library(knitr)
pandoc('input.md', format='markdown_github')

答案 1 :(得分:4)

您可以通过format的{​​{1}}参数指定表格格式,例如

kable()

或者,如果您想全局设置此选项,则可以

kable(head(mtcars), format = 'markdown')