1

我正在尝试在 Lyx 中使用 Knitr 进行绘图。当我跑

<<>>=
install.packages("ggplot2")
library(ggplot2)
qplot(y=y, x=1:1000, main = 'Log-Likelihood')
@

我得到错误

LaTeX Error: File `figure/unnamed-chunk-6.eps.bb' not found.

我尝试在起始括号中包含扩展名,但没有成功。我如何获得我的情节?


在第一个答案之后,尝试了这个:

定义函数(不是那么重要,只是为了展示我如何得到 y)

<<>>=
exp.loglik <- function(lambda, obs){   
    xbar = mean(obs)   
    return(length(obs)*log(lambda)-lambda*xbar) 
}
@

定义 y(不是那么重要,只是包括显示 y 是如何定义的)

<<>>=
y = rep(NA,1000) 
for (i in 1:1000){   
    y[i] = exp.loglik(lambda=i/10000, obs=diet_data$survtime)   
}
@

运行的代码然后发生错误(请注意,我按照说明在纯 R 中安装了包)

<<warning=FALSE, message=FALSE, echo=FALSE>>=
library(ggplot2)
qplot(y=y, x=1:1000, main = 'Log-Likelihood')
@

相同的错误:LaTeX 错误:找不到文件“figure/unnamed-chunk-6.eps.bb”。

4

1 回答 1

1

首先,单独安装包,只install.packages在纯 R 中运行。其次,你不定义y.

这是一个最小的例子,它产生一个不显示 R 代码、警告或消息的图:

<<warning=FALSE, message=FALSE, echo=FALSE>>= 
library(ggplot2) 
qplot(y=10:1, x=1:10, main = 'Log-Likelihood') 
@

编辑

我正在运行以下代码:

<<>>= 
exp.loglik <- function(lambda, obs) {        
  xbar = mean(obs)        
  return(length(obs)*log(lambda)-lambda*xbar)  
}
@

<<>>= 
y = rep(NA,5)  
for (i in 1:5) {        
  y[i] = exp.loglik(lambda=i/5, obs=runif(5))    
} 
@

<<warning=FALSE, message=FALSE>>= 
library(ggplot2) 
qplot(y=y, x=1:5, main = 'Log-Likelihood') 
@

我得到一张照片。你的代码在干净的 R 中工作吗?只需重新运行它以确保它是。如果那里一切正常,那么它可能与 LATEX/knitr 安装有关。

于 2014-02-18T10:45:18.147 回答