gpt4 book ai didi

r - "Compile PDF"和 knit2pdf 的区别

转载 作者:行者123 更新时间:2023-12-04 00:23:27 25 4
gpt4 key购买 nike

我有一个 .Rnw 文件,我可以使用 RStudio(或 Command+Shift+k)中的“编译 PDF”按钮将其编译为 PDF。 但是,当我使用 knit2pdf 时,不会创建图形,也不会创建完整的 PDF。为什么会发生这种情况?您如何具体设置图像的存储位置,以便 pdflatex 可以找到它们?

这是一个例子。我知道 this我几天前发布的问题有一个类似的例子,但在我看来,这是两个不同的问题。

如果我点击“编译”,这个文件将运行得很好并生成一个 PDF。我没有收到任何错误,图形是在/figure 目录中生成的,一切都很好。

%test.Rnw
\documentclass{article}
\usepackage[margin=.5in, landscape]{geometry}
\begin{document}

This is some test text!

<<setup, include=FALSE, results='hide', cache=FALSE>>=
opts_chunk$set(echo=FALSE, warning = FALSE, message = FALSE,
cache = FALSE, error = FALSE)
library(ggplot2)
@

<<printplotscreen, results='asis'>>=
ggplot(diamonds) +
geom_bar(aes(x = color, stat = "bin"))
@

\end{document}

但是,当我运行此脚本时,该脚本旨在执行与点击“编译”(是吗?)完全相同的事情时,该图形并未创建,并且我在下面收到了关于无法找到它的并不令人惊讶的错误。
#test.R
library("knitr")

knit2pdf(input = "~/Desktop/thing/test.Rnw",
output=paste0('~/Desktop/thing/test','.tex'))

Error in texi2dvi(file = file, pdf = TRUE, clean = clean, quiet = quiet, :
Running 'texi2dvi' on 'test.tex' failed.
LaTeX errors:
! LaTeX Error: File `figure/printplotscreen-1' not found.

注意:如果您正在尝试重现此内容(谢谢!),请确保首先运行 knit2pdf 脚本以查看它不会创建数字。如果您先点击“编译”,那么 knit2pdf 将在那里使用数字,但它不会准确表示情况。

最佳答案

解决办法:确保在使用 knit2pdf 之前将工作目录设置为项目目录,然后将“输入”路径缩短为 .Rnw 文件。因此...

test.R
library("knitr")
diamonds = diamonds[diamonds$cut != "Very Good",]

setwd("/Users/me/Desktop/thing")
knit2pdf(input = "test.Rnw", output = "test.tex")

关于r - "Compile PDF"和 knit2pdf 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33555002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com