原始HTML和(knitr)循环中的绘图

时间:2015-02-18 14:48:19

标签: r knitr

我正在整理一个Knitr脚本来生成报告。报告的内容在运行时动态确定,报告的各部分通过循环生成。理想情况下,我想在循环的每次迭代中执行以下两个操作:

  1. 生成一些原始HTML输出和
  2. 生成情节。
  3. 然而,我正在努力让这两者同时发挥作用。

    如果我使用以下块选项,那么我会得到这些图,但HTML代码的格式为" pre"环境。

    ```{r echo=FALSE, fig.keep = "all", fig.show = "asis"}
    for (i in 1:3) {
      cat("<h2>Heading</h2>")
      print(ggplot(data.frame(x = 1:10, y = 1:10), aes(x = x, y = y)) + geom_point())
    }
    ```
    

    如果我更改了块选项,那么我会得到原始HTML但是图表会消失,被一个短文本片段替换,表示该图的路径。

    ```{r results="asis", echo=FALSE}
    for (i in 1:3) {
      cat("<h2>Heading</h2>")
      print(ggplot(data.frame(x = 1:10, y = 1:10), aes(x = x, y = y)) + geom_point())
    }
    ```
    

    是否有可能让两者同时工作?

    这是我第一次尝试与Knitr做一些非常重要的事情,所以我确信这个问题有一个简单的答案。

    祝你好运, 安德鲁。

1 个答案:

答案 0 :(得分:1)

这似乎在我的结尾:

```{r results='asis', echo=F, fig.keep='all'}

for (i in 1:3) {

cat("<h2>Heading</h2>")
pl <- ggplot(data.frame(x = 1:10, y = 1:10), aes(x = x, y = y)) + geom_point()
print(pl)

}```