在rstudio中使用knitr编译pdf时出错

时间:2013-05-30 00:39:39

标签: r knitr sweave rstudio

我已经在Linux mint和Windows 7上安装了包 Sweave 以及 knitr ,它在Windows上运行良好,但在使用rstudio时失败了在Linux中。安装pkgs后,我写了一个简单的 dw.Rnw ,如下所示:

\documentclass{article}

\begin{document}

The regression model is as follows
<<echo=TRUE>>=
pop=read.table("pop.txt",header=TRUE)
attach(pop)

lm.sol=lm(y~year)
summary(lm.sol)
@


\end{document}

当我按下按钮&#39; 编译PDF &#39;在rstudio中,它返回以下错误消息:

During startup - Warning messages:
1: Setting LC_CTYPE failed, using "C" 
2: Setting LC_COLLATE failed, using "C" 
3: Setting LC_TIME failed, using "C" 
4: Setting LC_MESSAGES failed, using "C" 
5: Setting LC_PAPER failed, using "C" 
6: Setting LC_PAPER failed, using "C" 
7: Setting LC_MEASUREMENT failed, using "C" 
> grDevices::pdf.options(useDingbats = FALSE); require(knitr); knit('dw.Rnw', encoding='UTF-8')
Loading required package: knitr
Warning in readLines(if (is.character(input2)) { :
  cannot open file 'dw.Rnw': No such file or directory
Error in readLines(if (is.character(input2)) { : 
  cannot open the connection
Calls: knit -> readLines
Execution halted

knit 函数似乎有问题。但是,如果我输入

knit("dw.Rnw")

在rstudio的控制台中,然后它成功生成了dw.tex文件,我可以用pdflatex编译,最后生成dw.pdf。

那么我的编织者或rstudio有什么问题?

1 个答案:

答案 0 :(得分:11)

虽然我仍然不明白为什么,但从上面的评论来看,问题似乎来自~/.Rprofile(特别是setwd())。清理它可以解决问题。

注意您可能有其他启动配置文件。 .Rprofile只是一种可能性。有关详细信息,请参阅?Startup。例如,如果您使用的是Windows,则可能需要查看C:\Program Files\R\etc\Rprofile.site是否存在。