plot.new()中的错误:R中的graphics边距太大

我是R新手,但是我已经用较小的数据集制作了大量关联图。 然而,当我试图绘制一个大的数据集(2GB +),我可以产生的情节很好,但传说并没有显示出来。 任何build议? 或替代品?

library(gplots) r.cor <- cor(r) layout(matrix(c(1,1,1,1,1,1,1,1,2,2), 5, 2, byrow = TRUE)) par(oma=c(5,7,1,1)) cx <- rev(colorpanel(25,"yellow","black","blue")) leg <- seq(min(r.cor,na.rm=T),max(r.cor,na.rm=T),length=10) image(r.cor,main="Correlation plot Normal/Tumor data",axes=F,col=cx) axis(1, at=seq(0,1,length=ncol(r.cor)), labels=dimnames(r.cor)[[2]], cex.axis=0.9,las=2) axis(2,at=seq(0,1,length=ncol(r.cor)), labels=dimnames(r.cor)[[2]], cex.axis=0.9,las=2) image(as.matrix(leg),col=cx,axes=T) 

plot.new()错误:图边距过大

 tmp <- round(leg,2) axis(1,at=seq(0,1,length=length(leg)), labels=tmp,cex.axis=1) 

我怀疑问题是由layout()调用创build的小graphics区域2不足以包含默认边距,更不用说绘图了。

在导致问题的线路之前尝试:

 par(mar = rep(2, 4)) 

然后绘制第二个图像

 image(as.matrix(leg),col=cx,axes=T) 

您需要在par()调用中调整边距的大小,以显示正确的结果。 您可能还需要增加您正在绘制的实际设备的大小。

最后一个提示,在改变它们之前保存par()默认值,所以把你现有的par()调用改为:

 op <- par(oma=c(5,7,1,1)) 

那么在阴谋结束的时候呢

 par(op) 

Rstudio中只会出现这个错误,因为您的“Plots”窗格只是勉强小小。 尝试缩放您的“文件,情节,软件包,帮助,查看器”,看看是否有帮助!

如果您在RStudio中收到此消息, 请单击“标签”选项卡中的“扫帚”图标“清除所有图”,然后尝试再次绘图()。

在这里输入图像描述

我在R Studio中遇到了这个错误,只是简单地通过从右向左点击并拖动侧边栏来修复边栏。

检查你的对象是一个列表还是一个向量。 为此,inputis.list(yourobject) 。 如果是这样,请尝试将其重命名为x<-unlist(yourobject) 。 这将使它成为一个可以绘制的vector。

这在RStudio中有时会发生。 为了解决这个问题,您可以尝试绘制到外部窗口(仅限Windows):

 windows() ## create window to plot your file ## ... your plotting code here ... dev.off() 

当我试图绘制高维数据时,出现了这个错误。 如果这是你正在发生的事情,请尝试多维缩放: http : //www.statmethods.net/advstats/mds.html

在这里输入图像描述

如果您使用RStudio,只需放大此区域。

我几个星期以来一直在努力解决这个错误(使用RStudio)。 我试图移动阴谋窗口越来越小,但这并没有一贯的帮助。 当我将应用程序移动(拖动)到更大的显示器时,问题就消失了! 我惊呆了…这么多时间浪费了…我知道我的代码是正确的…

RStudio Plotscanvas限制了绘图的宽度和高度。 但是,如果您使用Rmarkdown代码块创build绘图,则它将在没有canvas字段限制的情况下工作,因为根据纸张大小设置绘图区域。

例如:

  ```{r} #inside of code chunk in Rmarkdown grid <- par(mfrow=c(4, 5)) plot(faithful, main="Faithful eruptions") plot(large.islands, main="Islands", ylab="Area") ... par(grid) ``` 

我今天发现这个错误。 最初,我试图将它输出到一个低宽度和高度的.jpeg文件。

 jpeg("method1_test.jpg", width=900, height=900, res=40) 

后来我增加了宽度和高度:

 jpeg("method1_test.jpg", width=1900, height=1900, res=40) 

错误不在那里。 🙂

你也可以玩分辨率,如果分辨率高,你需要更多的宽度和高度。