【问题标题】:knitr has stopped outputting plotsknitr 已停止输出绘图
【发布时间】:2013-06-20 01:28:28
【问题描述】:

我最近在 R 中遇到了 knitr 的问题,它突然停止了绘图。它不报告任何问题,问题。它只是制作情节的那个块(本机 R 或 ggplot2)什么都不做。该块被评估,但不知何故被视为没有 R 代码的块。

我已将问题简化为一个最小示例,但不知道出了什么问题。整个文件可以在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文件是 您可以在哪里看到该块已被回显。

我不知道如何解决这个问题! 请帮忙。

更新

> 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  

【问题讨论】:

  • 我无法重现该问题。 library(knitr); sessionInfo() 请!
  • 尝试使用 fig=TRUE 和块选项中的各种选项,而不是手动插入 \begin{figure} 的东西。
  • @Dason - 我在yihui.name/knitr/options 中找不到fig=TRUE 的任何文档;有很多变体(''fig.align''等)。
  • @MrGumble 你说得对,现在 knitr 中没有 fig=TRUE;这只是在早期与 Sweave 兼容的一个选项。正如我所说,请发布会话信息。
  • 请参阅 knitr 常见问题解答 1:bit.ly/knitr-faq

标签: r knitr


【解决方案1】:

fig=TRUE in ">="为我工作!

问题出在“=”中 来自:

\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}

谢一辉(2013-09-09)。带有 R 和 knitr 的动态文档(Chapman & Hall/CRC The R Series)(第 13 页)。泰勒和弗朗西斯 CRC 电子书帐户。 Kindle版。

最好的,

罗伯托

【讨论】:

    猜你喜欢
    • 2012-06-07
    • 2017-10-30
    • 1970-01-01
    • 2017-09-09
    • 1970-01-01
    • 1970-01-01
    • 2016-02-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多