似乎无法使用R中的dev.off()关闭设备

jckbn6z7  于 2023-01-15  发布在  其他
关注(0)|答案(2)|浏览(223)

我使用的是Jupyter笔记本电脑,在OSX中运行R内核(3.2.2),做一些基本的统计练习。几天前,我第一次玩ggplot,从一个笔记本电脑单元运行一些命令,尝试打印到pdf文件,换句话说,使用类似下面的东西:pdf("file.pdf"); plot(x, y); dev.off()我没有保留任何这些单元格内容,所以我不能确切地看到我运行了什么,但我想有可能我创建了一些pdf,但没有包括dev.off()命令?
我的问题是,自从那次会议以来,现在我在任何笔记本上运行的每个单元格(包括新的空白单元格)都会生成一个不需要的pdf文件。如果代码涉及绘制一个图形,pdf就会包含那个图形,如果代码是其他东西,创建的pdf就无法打开。我找不到任何方法,优雅的或粗野的,来阻止这些pdf的创建。
如果转到新的空白笔记本:
运行dev.list()将返回pdf: 2
运行dev.cur()将返回pdf: 2
运行dev.off()将返回null device: 1
但是,如果紧接着再次运行dev.list()dev.cur(),它们将再次返回pdf: 2
我可以打开其他新设备,并且dev.off()成功地关闭了它们。但是这个pdf: 2设备不会消失。我尝试了终止所有会话,重新启动我的机器等等,但是没有用;建议?
此外,如果我从终端的控制台(即不是从笔记本电脑)运行pdf()命令,我的绘图显示为由Quartz生成;我知道这可能是一个石英问题,而不是一个R问题,但我的问题仍然存在,我如何关闭这个设备,或以其他方式停止所有这些PDF文件正在创建?

ozxc1zmp

ozxc1zmp1#

sink()已打开但未关闭时,这可能是一个问题,可能是因为在到达关闭代码之前发生了错误。
尝试执行以下操作以插入打开的Flume:

sink(NULL)
ht @mdsumner
mgdq6dx1

mgdq6dx12#

graphics.off()

应强制关闭所有设备。有关更多有用信息,请查看this page

相关问题