2016-08-27 1 views
1

에서 플롯 여러 파일 형식은 원래 나는 문서를 니트 SVGPNG 동시에 플롯의 버전을 생성하고 싶었다. R : 한 번

나는 knitr의 문서를 확인하고 opts_chunk$set(dev = ...) 당신이 플롯을 받아 자신의 기능을 설정할 수 있다는 것을 알게되었습니다.

svg(); pdf()의 호출이 두 장치를 열지 만 마지막 장치 만 출력을 생성하므로 너무 쉽지 않습니다.

아이디어가 있으십니까?

+0

HTML 출력을 생성합니까? 그렇다면 PNG를 HTML에 표시하고 SVG를 외부에 저장하는 것이 좋습니다. –

+0

또한 RMarkdown을 사용하고 있습니까? 아니면 혼자서 knitr? –

+2

'dev = c ("png", "svg", "pdf")' – hrbrmstr

답변

3

당신이 RMarkdown 작업, 여러 형식으로 출력 각각의 플롯을 시도하는 경우에, 당신은 할 수 있습니다 : 파일이 "README.Rmd"라는 경우

--- 
output: 
    html_document: 
    self_contained: false 
--- 

```{r} 
library(knitr) 
opts_chunk$set(dev=c('png', 'svg')) 
``` 

```{r} 
plot(rnorm(10), rnorm(10)) 
``` 

, 다음 이미지가 저장됩니다 README_files/figure-html/.

self_containedyaml parameter은 이미지 및 기타 JavaScript와 같은 리소스를 HTML 파일에 직접 포함하지 않고 외부에 저장하도록 지시합니다.

dev 옵션 (knitr docs 참조)에는 플롯을 저장하려는 모든 형식의 벡터가 전달 될 수 있습니다.

+0

정말 문서화되지 않았기 때문에 벡터를 전달할 수 있습니까? –

+1

@Jakob it there - knitr 문서의 [청크 옵션] (http://yihui.name/knitr/options/#chunk_options) 섹션에'dev'에 대한 문서에 묻혀 있습니다. 간과하기 쉬운;) –