我在Rstudio中遇到了一个奇怪的问题:如果脚本调用ggplot2函数来显示绘图,则使用源代码运行脚本不会生成绘图。如果我选择整个脚本并使用Ctrl+A
,然后运行当前行或所选内容(Ctrl+Enter
),则绘图会显示。同样,将绘图命令键入控制台会产生正确的输出。
例如:
library(ggplot2)
p = ggplot(mtcars, aes(wt, mpg))
p + geom_point()
只有在控制台中粘贴时才会输出,而不是在源代码中。
这方面有其他问题,但都没有帮助:
- ggplot2 ggsave函数导致图形设备无法显示图形错误地声称该问题已在较新版本中解决,但实际上并没有。
- RStudio - ggplot在打印和保存多个图形时未保存第一个图形被关闭为重复项,但它不仅不是重复项,而且
dev.off()
的解决方法也行不通("Error in dev.off() : cannot shut down device 1 (the null device)
")
如何让Rstudio在脚本被源代码调用时显示图形?我使用的是Rstudio 0.98.1062和R 3.1.1。