【问题标题】:plots after dynamic sections using R Markdown pander, knitr and pandoc使用 R Markdown pander、knitr 和 pandoc 绘制动态部分后的图
【发布时间】:2021-08-26 09:39:59
【问题描述】:

我用这个rmd:

---
title: "Some Title"
author: "Some Author"
date: "`r format(Sys.time(), '%d-%m-%Y')`" 
---

## A function that generates sections

```{r setup, include = FALSE}
library(pander)

create_section <- function() {

   # Inserts "## Title (auto)"
   pander::pandoc.header('Title (auto)', level = 2)

   # Section contents
   # e.g. a random plot
   plot(sample(1000, 10))

   # a list, formatted as Markdown
   # adding also empty lines, to be sure that this is valid Markdown
   pander::pandoc.p('')
   pander::pandoc.list(letters[1:3])
   pander::pandoc.p('')
}
```

## Generate sections

```{r, results='asis', echo=FALSE}
n_sections <- 3

for (i in seq(n_sections)) {
   create_section()
}
```

然后:

library(knitr);
library(rmarkdown);

setwd("C:/bla")

knit('test_md.Rmd')
rmarkdown::pandoc_convert("test_md.md", to = "pdf", output = "test_pdf.pdf")

这种作品,但情节都是在章节之后渲染的:

每个部分都应包含情节。有任何想法吗?谢谢!

PS:

包装:

plot(sample(1000, 10))

印刷中:

print(plot(sample(1000, 10)))

强制产生输出。不幸的是,NULL 也打印在绘图下方。

【问题讨论】:

  • 有时你需要在你的部分之间换行,把图放在自己的一行上,上下每一行都是空的
  • 谢谢。你的意思是源代码中的换行符?只是尝试过,并没有什么不同...

标签: r r-markdown knitr pandoc pander


【解决方案1】:

您可以在 YAML 中添加pdf_document,然后通过编织生成 PDF 吗?

---
title: "Some Title"
author: "Some Author"
date: "`r format(Sys.time(), '%d-%m-%Y')`" 
output: pdf_document
---

在 .md 文件上运行 rmarkdown::pandoc_convert() 时,我能够得到与您描述的相同的结果,所有绘图都位于 .PDF 文件的末尾。

【讨论】:

  • 感谢这并不容易。可能是因为我用的是Windows和Miketex
猜你喜欢
  • 2013-06-14
  • 2013-07-31
  • 2019-11-01
  • 2017-03-26
  • 2013-05-13
  • 2013-04-16
  • 1970-01-01
相关资源
最近更新 更多