什么相当于在RMarkdown中按下按钮编织?

时间:2017-05-10 03:58:54

标签: r rstudio knitr r-markdown

我知道答案,render()。但是,当我render下面的代码时,输​​出与我只需按knit即可获得的输出不一致。实际上,该表未按函数kable的预期呈现。

---
title: "Untitled"
output:
  pdf_document: default
  html_document: default
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

## R Markdown
```{r results='asis'}
library(knitr)
library(dplyr)

print_kable <- function(species) {
        iris %>% filter(Species == species) %>% 
            summarise(avg=mean(Sepal.Width)) %>% 
            kable(caption=paste('Results for', species)) %>% print
        }

ff <- lapply(c("setosa", "versicolor", "virginica"), print_kable)

```

要调用渲染器,我使用rmarkdown::render('testLookKable.Rmd', output_dir = 'standardReports/', runtime = 'static', output_format = 'pdf_document')

当按下按钮编织为pdf时,这就是表格的样子:

enter image description here

通过输入函数

,这就是我render()时的样子

enter image description here

我想要实现的是第一个输出,但通过显式运行函数而不是按下按钮进行渲染。

来自sessionInfo()

R version 3.4.0 (2017-04-21)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.4
rmarkdown_1.5
knitr_1.15.1 

1 个答案:

答案 0 :(得分:1)

我收到pdflatex未找到的错误(尽管locate找到了多个版本。在将当前版本的TexLive设置为2016后,

machine-name:~ username$  texdist —-current
machine-name:~ username$  pdflatex -v
# pdfTeX 3.14159265-2.6-1.40.17 (TeX Live 2016)

我仍然需要这样做(从SO上的答案中复制):

 sudo ln -fhs Distributions/.DefaultTeX/Contents/Programs/texbin /Library/TeX/texbin
 echo "/Library/TeX/texbin" >~/Desktop/TeX
 sudo cp ~/Desktop/TeX /etc/paths.d/TeX
 echo "/Library/TeX/Distributions/.DefaultTeX/Contents/Man" >~/Desktop/TeX
 sudo cp ~/Desktop/TeX /etc/manpaths.d/TeX
 echo /Library/TeX/texbin

我现在得到的是两张图片的组合版本:

enter image description here

我还编辑了PATH以删除前El Cap项目:usr/bin/texbin并输入/Library/TeX/Distributions/.DefaultTeX/Contents/Programs/texbin:。这些都没有奏效。 (我没有使用RStudio。)