"plot.new尚未被调用"rmarkdown中的错误(Rstudio 1.0.44)

XR *_* SC 17 plot r rstudio r-markdown

我正在使用最新版本的Rstudio和iMac

版本1.0.44 - ©2009-2016 RStudio,Inc.Mozilla/5.0(Macintosh; Intel Mac OS X 10_12_1)AppleWebKit/602.2.14(KHTML,与Gecko一样)

我注意到rmarkdown文件的笔记本功能.生成绘图时,不再使用通常的"绘图窗口",并且在代码块下方生成绘图.

我有以下代码的错误:

plot(seq(1,10,1))
abline(a=0,b=1)
Run Code Online (Sandbox Code Playgroud)

错误显示在代码块下方:

Error in int_abline(a = a, b = b, h = h, v = v, untf = untf, ...) : plot.new has not been called yet
Run Code Online (Sandbox Code Playgroud)

但是,在编织整个rmarkdown文件时,没有错误.

所以我想知道如何避免错误:

  • 通过使用另一个代码
  • 使用"情节窗口"
  • 或另一种方式.

小智 26

以下将有效

{plot(seq(1,10,1))
 abline(a=0,b=1)}
Run Code Online (Sandbox Code Playgroud)

  • 将其括在大括号中可确保所有行都被视为一个块。对于一个不相关的问题,这个答案很好地解释了这一点。/sf/answers/2013107281/ (4认同)
  • 添加一些解释,回答这个答案如何帮助OP解决当前问题 (2认同)

小智 8

在 RStudio 中,首选项 -> R Markdown 中有一个设置为“显示所有 R Markdown 文档的内联输出”。要消除错误,请确保未选中此项。


rmf*_*rmf 5

这也有效

plot(seq(1,10,1))+
abline(a=0,b=1)
Run Code Online (Sandbox Code Playgroud)