R Markdown - формат текста как заголовка в al oop, кажется, работает только для 1-й итерации l oop - PullRequest
2 голосов
/ 20 апреля 2020

Я пытаюсь сгенерировать документ R Markdown с динамически создаваемыми заголовками из oop.

Я использовал предложения из аналогичных вопросов SO: Knitr: печатать текст из блока кода как R markdown , Использование жирного текста в al oop для документа Word в Rmarkdown и написал

---
title: "Untitled"
output:
  html_document:
    toc: true
    toc_depth: 5
---

## R Markdown

```{r, warning=FALSE, message=FALSE,  echo=FALSE}
library(ggplot2)
library(dplyr)
```

```{r fig.width=4, fig.height=2,  echo=FALSE, results='asis'}
experiment_names <- paste0("Experiment ", 1:3)

for (id in 1:3){ 

  cat("  \n")
  cat("### ",  experiment_names[id])
  cat("  \n")

  set.seed(id)
  plt <- 
    data.frame(x = rnorm(100)) %>%
    ggplot(aes(x = x)) + 
    geom_histogram(binwidth = 0.1)
  plot(plt)
}
```

, но только первый итерационный заголовок l oop печатается правильно. Как заставить двух других работать тоже?

enter image description here

1 Ответ

2 голосов
/ 20 апреля 2020

Я не знаю, почему это работает, но попробуйте одну строку вместо трех:

cat("\n\n### ", experiment_names[id], "\n")
...