簡體   English   中英

在Lyx中用Knitr繪圖

[英]Plotting with Knitr in Lyx

我正在嘗試在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.

我嘗試在起始括號中包含擴展名,但沒有成功。 我如何得到我的情節?


按照第一個答案,嘗試以下操作:

定義功能(不是很重要,只是為了說明如何獲得)

<<>>=
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'。

首先,單獨安裝軟件包,僅在純R中運行install.packages 。第二,您不定義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安裝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM