knitr: включать рисунки в отчет * и * выводить рисунки в отдельные файлы

Я не только хотел бы, чтобы мои цифры появлялись в моем отчете, сгенерированном knitr, но я также хотел бы выводить их и в отдельные файлы. Для этого я включил код, подобный следующему:

```{r}
  #Plot figure in report
  plot(x,y)

  #Plot figure in file
  pdf(file="MyFig.pdf")
  plot(x,y)
  dev.off()
```

Это прекрасно работает, но я ожидаю, что есть более элегантное решение для этого, уже встроенное в knitr. Есть ли вариант с чанками или что-то подобное, что дает те же результаты?

3 ответа

Решение

Используйте опцию self_contained: no если вы используете html_document, или же keep_tex: yes если вы используете pdf_document, так что rmarkdown не удалит файлы рисунков после рендеринга выходного документа.

Ключевое слово dev='pdf' как объяснил Yihui здесь http://yihui.name/knitr/options/

Вместе с другими вариантами я нашел полезные:

```{r 'setup', echo = FALSE, cache = FALSE}
    opts_chunk$set(dev = c('pdf', 'png'), 
        fig.align = 'center', fig.height = 5, fig.width = 8.5, 
        pdf.options(encoding = "ISOLatin9.enc")) 
```

Попробуйте сохранить рисунки в виде файлов: https://www.njtierney.com/post/2018/02/28/three-r-tips/

«Совет номер 1: Сохраняйте созданные вами изображения»

Другие вопросы по тегам