【问题标题】:Error in plot.new() : figure margins too largeplot.new() 中的错误:图形边距太大
【发布时间】:2014-01-28 13:56:58
【问题描述】:

我想在 RStudio 中绘制一些图表

  while(1+window+n <= length(data[,1]))
{

  datalistB<-datalist[n:(n+window-1)]
...
    par(mfrow = c(i+1, 1))
    plot(datalistB, type="l")
    for(i in seq_along(loop.vec)) {
        plot( subsignals[[i]], type="l")
    }

n<-n+10
  Sys.sleep(0.5)
}

但如果我有四个以上的绘图,我会收到此错误:here 说我应该增加绘图窗格的大小。我做到了,但对我没有帮助。

有没有其他方法可以解决这个问题?

【问题讨论】:

  • 使用par(mai=...)par(mar=...) 来减小绘图周围的边距大小。您还应该考虑使用专为在同一帧上绘制多个子图的用例而设计的 latticeggplot2

标签: r plot


【解决方案1】:

试试这个:

par(mfcol=c(12,12), oma=c(1,1,0,0), mar=c(1,1,1,0), tcl=-0.1, mgp=c(0,0,0))
    plot(datalistB,type="l")
      for(i in seq_along(loop.vec))
      {
        plot( subsignals[[i]],type="l")
      }

【讨论】:

  • 感谢您的回答,但有时我会丢失此绘图 plot(datalistB,type="l") 我的绘图窗格每 0.5 秒更新一次,有时我会丢失第一个绘图
【解决方案2】:

我不确定,因为我看不到您的数据,但问题可能是因为您正在绘制一个列表。试试这个

as.numeric(unlist(datalistB)) -> datalistB

在绘图之前。

【讨论】:

    猜你喜欢
    • 2011-05-23
    • 1970-01-01
    • 1970-01-01
    • 2014-05-27
    • 2012-09-27
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多