2015-01-16 3 views
3

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

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

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

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

ответ

11

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

+0

Есть ли соответствующее решение для R Notebooks? Использование этой опции с 'output: html_notebook' не работает. –

2

Ключевое слово DEV = 'PDF', это объясняется здесь 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")) 
``` 
+1

Я использую 'output: html_document' большую часть времени, и ставя' 'png'' в первую очередь в списке, сделал рендеринг html красиво и сохранил цифры. В сочетании с 'fig.path',' fig.width' и 'fig.height' я смог придумать приличное решение: ' {r plot_stuff, fig.width = 10, fig.height = 5, fig.path = 'figure /', dev = c ('png', 'pdf')} ' – Lance