【问题标题】:Setting y min with variable y max in R plots在 R 图中使用变量 y max 设置 y min
【发布时间】:2014-10-21 18:46:42
【问题描述】:

我将数据设置为通过 for 循环运行大约 85 列物种的数据框,以为每个物种生成一个图(样本为行)。其中一些仅包含 0 个值,这些值在图的中间绘制点(y 范围(-1, 1)),我希望它们位于底部(y 范围(0,+ 值))。不包含全零的物种被缩放到 ymax,所以我不想为所有物种设置相同的最大值,因为 y 变量是相当...变量。我有没有办法在不设置 ymax 的情况下设置 ymin 以使 0 值始终位于绘图的底部?提前谢谢!

【问题讨论】:

    标签: r for-loop plot


    【解决方案1】:

    赌注:您不能设置ylim 的一侧(据我所知),但由于ylim 的默认限制被定义为数据的最大值和最小值,您可以重现此行为.

    # Some example data - its always good to include this in your question
    dat <- data.frame(spec1 = 1:10, spec2 = 11:20, spec3 = 0, spec4 = 1:10)
    
    # set plot window
    par(mfrow=c(2,2))
    
    # default plot - with no ylim scaling
    for(i in names(dat)) { plot(dat[[i]])  }
    

    给了

    添加ylim。最大值被视为数据的最大值或1(或您要指定的任何值)

    for(i in names(dat)) { 
              plot(dat[[i]], ylim=c(min(dat[[i]]), max(dat[[i]],1)))  
         }
    

    哪个产生

    注意其他图中的限制没有改变

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-22
      • 1970-01-01
      • 1970-01-01
      • 2022-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-27
      相关资源
      最近更新 更多