2013-06-23 2 views
2

Недавно я столкнулся с проблемой с knitr в R, где он внезапно прекратил делать графики. Он не сообщает о каких-либо проблемах, проблемах. Это просто тот кусок, который делает сюжет (родной R или ggplot2), ничего не делает. Кусок оценивается, но как-то рассматривается как кусок без R-кода.knitr прекратил вывод графиков

Я уменьшил проблему до минимального примера, но понятия не имею, что пошло не так. Весь файл можно найти по адресу http://pastebin.com/pJUYjkxd и имеет этот единственный фрагмент. Должно быть довольно просто?

<<mas11,dev='png'>>= 
plot(x=1:10, y=rnorm(10)) 
@ 

Но вязание производит следующий вывод (с R версии 2.14.1):

Rscript --vanilla -e "library(knitr); knit('test.dev.2.Rnw');" 


processing file: test.dev.2.Rnw 
    |>>>>>>>>>>>>>>>>>>>>>>           | 33% 
    ordinary text without R code 

    |>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>      | 67% 
label: mas11 (with options) 
List of 1 
$ dev: chr "png" 

    |>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>| 100% 
    ordinary text without R code 


output file: /home/stefan/Repos/manuscript1/datahandling/test.dev.2.tex 

а окончательный PDF-файл является enter image description here , где вы можете увидеть кусок был эхом.

Я понятия не имею, как решить эту проблему! Просьба помочь.

Update

> sessionInfo() 
R version 2.14.1 (2011-12-22) 
Platform: i686-pc-linux-gnu (32-bit) 

locale: 
[1] LC_CTYPE=en_US.UTF-8  LC_NUMERIC=C    
[3] LC_TIME=en_DK.UTF-8  LC_COLLATE=en_US.UTF-8  
[5] LC_MONETARY=en_DK.UTF-8 LC_MESSAGES=en_US.UTF-8 
[7] LC_PAPER=C     LC_NAME=C     
[9] LC_ADDRESS=C    LC_TELEPHONE=C    
[11] LC_MEASUREMENT=en_DK.UTF-8 LC_IDENTIFICATION=C  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

other attached packages: 
[1] knitr_0.8 

loaded via a namespace (and not attached): 
[1] digest_0.5.2 evaluate_0.4.3 formatR_0.6 plyr_1.8  stringr_0.6.1 
[6] tools_2.14.1 
+2

Я не могу воспроизвести проблему. 'Библиотека (knitr); sessionInfo() 'пожалуйста! –

+1

Попробуйте использовать 'fig = TRUE' и различные опции в параметрах chunk вместо ручной вставки материала \ begin {figure}. – Dason

+0

@Dason - я не могу найти документацию для 'fig = TRUE' в http://yihui.name/knitr/options; существует много вариантов («fig.align» и т. д.). – MrGumble

ответ

-2

фига = TRUE в "< < >> =" работал для меня!

Проблема заключалась в "<> =" из:

\documentclass{article} 
\begin{document} 
\title{A Minimal Example} 
\author{Yihui Xie} 
\maketitle 
We examine the relationship between speed and stopping 
distance using a linear regression model: 
$Y = \beta_0 + \beta_1 x + \epsilon$. 
<<model, fig.width=4, fig.height=3, fig.align='center'>>= 
par(mar = c(4, 4, 1, 1), mgp = c(2, 1, 0), cex = 0.8) 
plot(cars, pch = 20, col = 'darkgray') 
fit <- lm(dist ~ speed, data = cars) 
abline(fit, lwd = 2) 
@ 
The slope of a simple linear regression is 
\Sexpr{coef(fit)[2]}. 
\end{document} 

Се, Yihui (2013-09-09). Динамические документы с R и knitr (Chapman & Зал/CRC Серия R) (Cтр. 13). Taylor и Francis CRC ebook account. Kindle Edition.

Бест,

Роберто

Смежные вопросы