grid.newpage() 中的错误 (main.R#9): no active device and default getOption("device") is invalid

在pycharm中使用R语言出现以下报错

img


具体代码如下:

img


尝试在谷歌或百度寻找答案,但是未果。希望有人能教教我该怎么解决这个问题。

因为ggplot2在pycharm中无法开启图形设备来生成图像。可以尝试使用以下代码来手动开启图形设备:

library(ggplot2)

# Open a graphic device
png("plot.png")

rm(list = ls())

dat <- data.frame(
  time = factor(c("Lunch","Dinner"), levels=c("Lunch","Dinner")),
  total_bill =c(14.89, 17.23)
)

dat

ggplot(data=dat, aes(x=time, y=total_bill, fill=time)) +
  geom_bar(stat="identity")

# Close the graphic device
dev.off()

这样就可以生成plot.png文件了,您可以在该文件中查看生成的图形。

这是一个R语言程序的错误,具体在于该程序在运行时无法找到有效的图形设备。具体来说,在执行“grid.new page()”语句时,没有激活的图形设备,并且默认的getOption("device")是无效的。

解决方案是:在程序中添加一个有效的图形设备,例如“pdf(file="plot.pdf")”,以便在运行该程序时创建一个可视化输出。

根据您的错误描述,直接的错误,是说,在grid.newpage方法中,没有活动的设备并且默认的getoption方法是无效的这个grid.newpage方法是在你调用了library() 方法后内部执行的方法,在这里报错,可能是你在library里面传入的值ggplot2有问题或者不符合这个方法的要求,或者你在实现这个功能时有相关的依赖包没有安装或导入正确。