업데이트 된 답변 (2013 년 2 월 10 일)
rmarkdown package : Pandoc 과 인터페이스 하는 rmarkdown
패키지가 github 에 있습니다. render
기능 이 포함되어 있습니다. 이 설명서를 통해 다양한 형식 중에서 rmarkdown을 pdf로 변환하는 방법을 매우 명확하게 알 수 있습니다. 여기에는 rmarkdown 파일에 출력 형식을 포함 시키거나 rend 함수에 출력 형식을 제공하는 것이 포함됩니다. 예 :
render("input.Rmd", "pdf_document")
명령 줄 : 명령 줄render
에서
실행하면 (예 : makefile 사용) 가끔 pandoc을 찾을 수없는 문제가 있습니다. 아마도 검색 경로에없는 것 같습니다. 다음 답변 은 R 환경에 pandoc을 추가하는 방법을 설명 합니다 .
예를 들어 OSX를 실행하는 컴퓨터에서 RStudio를 통해 pandoc의 사본이있는 경우 다음을 사용할 수 있습니다.
Rscript -e "Sys.setenv(RSTUDIO_PANDOC='/Applications/RStudio.app/Contents/MacOS/pandoc');library(rmarkdown); library(utils); render('input.Rmd', 'pdf_document')"
기존 답변 (2012 년경)
그래서 많은 사람들이 Pandoc이 갈 길이라고 제안했습니다. 최신 버전의 Pandoc을 사용해야하는 중요성에 대해서는 아래 참고 사항을 참조하십시오.
Pandoc 사용
다음 명령을 사용하여 R Markdown을 HTML (예 : 이 makefile의 변형 )로 변환했습니다. 여기서 구성 요소가 RMDFILE
없는 R Markdown 파일의 이름입니다 .rmd
(확장자가 .rmd
아닌 것으로 가정 .Rmd
).
RMDFILE=example-r-markdown
Rscript -e "require(knitr); require(markdown); knit('$RMDFILE.rmd', '$RMDFILE.md'); markdownToHTML('$RMDFILE.md', '$RMDFILE.html', options=c('use_xhml'))"
그런 다음 pdf로 변환하는이 명령
Pandoc -s example-r-markdown.html -o example-r-markdown.pdf
이것에 대한 몇 가지 참고 사항 :
- 예제 파일에서 플롯을 호스트 이미지로 이미지로 내보내는 참조를 제거했습니다.
- imgur에서 호스팅 된 이미지에 대한 참조를 제거했습니다. 수치는 로컬이어야합니다.
- 이
markdownToHTML
기능 의 옵션은 이미지 참조가 HTML 파일에 저장된 데이터가 아니라 파일에 대한 것임을 의미했습니다 (즉, 'base64_images'
옵션 목록에서 제거됨 ).
- 결과 출력은 다음과 같습니다 . 브라우저에서 HTML 파일을 pdf로 인쇄하면 얻을 수있는 것과 대조적으로 LaTeX 스타일의 문서를 분명히 만들었습니다.
Pandoc의 최신 버전 얻기
@daroczig에서 언급했듯이 pdf를 출력하려면 Pandoc의 최신 버전이 있어야합니다. 우분투에 2012년 6월 15 일, 나는이 패키지 관리자에서 Pandoc 버전 1.8.1 붙어했지만,에서 보인다 변경 로그 PDF 지원을 위해 당신이 Pandoc의 최소 버전 1.9+에서 필요.
따라서 설치했습니다 caball-install
. 그런 다음 실행했습니다.
cabal update
cabal install pandoc
Pandoc가 설치되었으므로 ~/.cabal/bin/pandoc
실행했을 때 pandoc
여전히 이전 버전이 표시되었습니다. 경로 에 추가하려면 여기를 참조하십시오 .
knit
하고mdconvert.sh
). LaTeX가 너무 유연하기 때문에 일반적인 접근 방식을 찾기가 어려울 수 있습니다. pandoc에 모든 종류의 템플릿을 사용할 수 있습니다.