如何在R中重置par(mfrow)?

76

我执行了par(mfrow =c(1,2)),现在每次绘图都会显示为两个图。如何将其重置为仅显示一个图。

非常感谢。


您也可以通过关闭图表来重置它。 - Tomas
3个回答

110
你可以重置mfrow参数。
par(mfrow=c(1,1))

9
请注意,每个绘图设备都有自己单独的par设置。因此,如果你在控制台上交互地生成图形并使用par(foo = bar)更改了一些设置,则可以通过调用dev.off()重新开始,在新设备上创建图形。 - joran
这非常有用。谢谢Joran。 - akz
7
另一个有用的习语是 oldparams <- par(mfrow=c(2,1)); [do stuff]; par(oldparams) - Ben Bolker
1
提醒一下,如果你在R脚本中尝试这个方法,请注意。有时候会有一些函数(例如NbClust)会为你生成图形,它们实际上会改变mfrow的值并将其保留;因此,你的下一个图形将会并排显示。只需在运行这些函数后添加par(mfrow=c(1, 1))即可解决问题。 - Carlos F

41
您可以通过以下方式重置图表:
dev.off()

8
这在交互式工作时有效,但可能会破坏像knitr\pandoc这样的文档生成系统。 - DLKJ
2
如果您没有检查是否有东西需要关闭,那么会出现错误。最好使用:if(dev.cur() > 1) dev.off() - Antoni
我们可以使用 graphics.off() 一次性关闭所有设备。 - jay.sf

0

dev.off()graphics.off()对我来说都很好用。 祝你好运!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接