我正在尝试使用knitr包从。rnw文件生成pdf。请在
下面找到sessioninfo()
的输出R version 3.1.0 (2014-04-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] knitr_1.6
loaded via a namespace (and not attached):
[1] evaluate_0.5.5 formatR_0.10 stringr_0.6.2 tools_3.1.0
我已经安装了knitr,但无法编译. rnw文件中的代码。弹出一个提示"未检测到TeX安装"。编译前请先安装TeX"。然而,TeX和pdfLaTeX都没有安装在这个版本的R中,一个警告消息说TeX或pdfLaTeX不可用。
作为一种方便,installr
R包是一种非常方便的方式来安装TeX——以及一堆其他有用的东西。只要运行installr::installr()
并选择MikTeX(至少)。(不确定是否适用于非windows)
将我的评论包装成答案。knitr
使用pdflatex
生成pdf文件。pdflatex
是TeX/LaTeX安装的一部分,它不是R包,不能使用R终端安装(至少在本机,因为installr
实际上可以这样做,如@Gregor所示)。
您需要在您的机器上安装TeX才能正常使用knitr
。有几个选项,Windows使用Miktex, linux使用TexLive。
看一下knitr
附带的最小示例。它从documentclass{article}
开始,这是一个典型的TeX文件的第一行。
pandoc
生成HTML,因此它不需要TeX,如果您不喜欢使用TeX/LaTeX,它可能是一个很好的选择。步骤1:从http://miktex.org/2.9/setup下载并安装MiKTeX
步骤2:运行
Sys.getenv("PATH")
在Rstudio这个命令返回路径,Rstudio试图找到pdflattex .exe在windows(64位),它应该返回C:Program FilesMiKTeX 2.9miktexbinx64 pdflattex .exe如果pdflattex .exe不在这个位置Rstudio给出这个错误代码41.
步骤3:设置路径变量运行:
Sys.setenv(PATH=paste(Sys.getenv("PATH"),"C:/Program Files/MiKTeX 2.9/miktex/bin/x64/",sep=";"))