【问题标题】:Hiding the R code in Rmarkdown/knit and just showing the results在 Rmarkdown/knit 中隐藏 R 代码并仅显示结果
【发布时间】:2012-10-16 23:11:19
【问题描述】:

在我的 R Markdown 文档中,有时我只想生成一个报告而不显示实际代码(特别是当我将它发送给我的老板时)。如何隐藏 R 代码并只显示图形和结果?

例如:

---
output: html_document
---

```{r fig.width=16, fig.height=6}
plot(cars)
```

这显示了命令和情节。如何从我的 HTML 报告中删除命令?

【问题讨论】:

    标签: r-markdown knitr


    【解决方案1】:

    没问题

    ```{r someVar, echo=FALSE}
    someVariable
    ```
    

    显示一些(先前计算的)变量someVariable。或者运行打印 etc pp 的代码。

    所以对于绘图,我有例如

    ### Impact of choice of ....
    ```{r somePlot, echo=FALSE}
    plotResults(Res, Grid, "some text", "some more text")
    ```
    

    绘图函数plotResults 来自本地包。

    【讨论】:

    • 或将opts_chunk$set(echo=FALSE) 放在文档头部的代码块中以全局设置
    • 确保不要回显 opts_chunk 命令!将{r echo=FALSE} opts_chunk$set(echo=FALSE) 放在文档顶部(在代码块中)应该可以解决所有问题
    【解决方案2】:

    知道您可以使用它可能对您也很有趣:

    {r echo=FALSE, results='hide',message=FALSE}
    a<-as.numeric(rnorm(100))
    hist(a, breaks=24)
    

    排除您给出的所有命令,它吐出的所有结果以及 R 吐出的所有消息信息(例如,在 library(ggplot) 或其他东西之后)

    【讨论】:

      【解决方案3】:

      只是汇总答案并扩展基础知识。以下是三个选项:

      1) 隐藏代码(单个块)

      我们可以在块头中包含echo=FALSE

      ```{r echo=FALSE}
      plot(cars)
      ```
      

      2) 隐藏块(全局)。

      我们可以使用knitr::opts_chunk$set 函数更改knitr 的默认行为。我们在文档的开头调用它并在块头中包含include=FALSE 以抑制任何输出:

      ---
      output: html_document
      ---
      
      ```{r include = FALSE}
      knitr::opts_chunk$set(echo=FALSE)
      ```
      
      ```{r}
      plot(cars)
      ```
      

      3) 折叠的代码块

      对于 HTML 输出,我们可以使用代码折叠来隐藏输出文件中的代码。它仍将包含代码,但只有在用户单击此代码后才能看到。您可以进一步阅读此内容here

      ---
      output:
        html_document:
          code_folding: "hide"
      ---
      
      
      ```{r}
      plot(cars)
      ```
      

      【讨论】:

      • 我可以在使用序言中的选项编织成 PDF 时排除打印代码吗? knitr::opts_chunk$set(echo=FALSE) 有效,但我更喜欢pdf_document code_folding: "hide" 之类的选项。
      【解决方案4】:

      或者,您还可以通过markdownreports package 即时解析标准降价文档(没有代码块本身)。

      【讨论】:

        猜你喜欢
        • 2015-11-11
        • 2017-09-30
        • 1970-01-01
        • 2018-05-22
        • 2016-09-13
        • 1970-01-01
        • 2017-11-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多