【问题标题】:"Compile pdf" in Rstudio works but knit2pdf does not work in R or RStudioRstudio 中的“编译 pdf”有效,但 knit2pdf 在 R 或 RStudio 中不起作用
【发布时间】:2017-11-30 20:13:29
【问题描述】:

我希望有人可以指出可以解决我从 R 编译 tex 文档的问题的内部设置。

我的问题是 texi2pdfknit2pdf 抛出警告并且不生成 pdf。

我可以使用 RStudio 中的“编译 pdf”按钮来编译 Rnw 文件,我可以将 rnw 文件编入文本文件,我可以使用 TeXnicCenter 将我的 tex 文件编译成 pdf,但我无法获得texi2pdfknit2pdf 函数在 R 中工作。

在一台安装了 TexLive 的机器上和另一台安装了 MikTex 2.9 的机器上的 Windows 7 中,当我运行以下命令时:

library(knitr)
f = system.file("examples", "knitr-minimal.Rnw", package = "knitr")
knit(f)  # compile to tex
texi2pdf(gsub('Rnw', 'tex', f))

第一部分有效 (rnw->tex),但 texi2pdf (tex->pdf) 导致:

Warning message:
running command '"C:\PROGRA~2\MIKTEX~1.9\miktex\bin\texify.exe" --quiet --pdf 
"C:/Program Files/R/R-3.3.3/library/knitr/examples/knitr-minimal.tex" --max-
iterations=20 -I "C:/PROGRA~1/R/R-33~1.3/share/texmf/tex/latex" -I 
"C:/PROGRA~1/R/R-33~1.3/share/texmf/bibtex/bst"' had status 1 

如果我运行 knit2pdf(f) 也是如此,我会收到相同的警告消息 + 弹出“pdflatex.EXE 已停止工作”。

我不明白的另一件事是我的路径中有 MikTex 2.9,但警告消息引用了 MikTex 1.9,它没有安装在我的机器上并且不在路径中。

【问题讨论】:

  • 这是一个错误恕我直言。我还得到Sys.which("texify") 的输出是完全相同的路径,并且在那里找不到分布。
  • 您认为这是导致编译问题的原因吗?我不明白这些部分的相互作用,那是 r 的错误吗?针织?工具?
  • 这不是错误,也不是在寻找 MikTex 1.9。我对此大错特错。 r.789695.n4.nabble.com/…
  • 同样的错误发生在我身上。你是怎么解决的?

标签: r rstudio knitr pdflatex miktex


【解决方案1】:

我今天发生了这种情况,似乎是因为我的用户帐户下安装了 MikTex 2.9。 R 也安装在我的用户帐户下。这对我有用:

  1. 卸载 MikTex 并在程序文件下重新安装。从控制台更新 MikTex。
  2. 将“C:\Program Files\MiKTeX 2.9\miktex\bin\x64”添加到 Windows PATH(删除旧的 MikTex 路径)。
  3. 重新启动计算机
  4. 卸载并重新安装 knitr 包(这可能不是必需的)。

【讨论】:

    【解决方案2】:

    这与其说是一种解决方法,不如说是一种解决方法......

    library(knitr)
    setwd(system.file("examples", package = "knitr"))
    knit("knitr-minimal.Rnw")  # compile to tex
    system('pdflatex knitr-minimal.tex')
    

    【讨论】:

      猜你喜欢
      • 2016-04-08
      • 2020-11-25
      • 1970-01-01
      • 2021-05-21
      • 2018-07-13
      • 1970-01-01
      • 2017-11-08
      • 1970-01-01
      相关资源
      最近更新 更多