我自动化演示文稿,并希望为目录中的每个图像创建幻灯片(图像文件名都是具有三个字符名称的.png文件)。
这可以根据需要测试带有标题和图像的幻灯片是否会呈现:
```{r, results="asis", out.width="900px"}
plot_files <- list.files(paste0(mydir, "/plots"))
i <- 1
cat("\n\n##", substr(plot_files[i], 1, 3), "\n\n", sep="")
knitr::include_graphics(paste0(dir, "/plots/", plot_files[i]))
```
但是当我把上面的内容包装成for
循环......
```{r, results="asis", out.width="900px"}
plot_files <- list.files(paste0(mydir, "/plots"))
for (i in 1:length(plot_files)) {
cat("\n\n##", substr(plot_files[i], 1, 3), "\n\n", sep="")
knitr::include_graphics(paste0(dir, "/plots/", plot_files[i]))
}
```
...每个幻灯片都使用标题正确生成,但图像不再呈现。为什么在循环中包装代码会导致图像渲染失败?
答案 0 :(得分:1)
我认为您可以使用图片的(Pandoc)Markdown语法代替knitr::include_graphics()
,例如
cat('![](', paste0(dir, "/plots/", plot_files[i]), '){width=900px}\n\n', sep = '')