【问题标题】:adjusting x-axis in R histograms调整 R 直方图中的 x 轴
【发布时间】:2010-08-16 07:00:32
【问题描述】:

这个直方图真的很丑:

hist(rbinom(10000, 20000, 0.0001),freq=F,right=F)

我不希望我的条之间有空格。我尝试了不同的breaks= 方法,但它们都产生了相似的结果。有什么想法吗?

我还希望将每个 bin 值(或平均值)打印在其条形的 中心 下方。

【问题讨论】:

    标签: r plot histogram


    【解决方案1】:

    这是一种使标签居中的方法:

    x <- rbinom(1000, 2000, 0.001)
    tmp <- hist(x, breaks=0:(max(x)+1), xaxt="n", right=FALSE, freq=FALSE)
    axis(1, at=tmp$mids, labels=0:max(x))
    

    【讨论】:

    • +1 简单明了,虽然 breaks=0:(max(x)+1) 不够通用(在某些情况下,您希望分箱而不是每个 int 的条形)
    • 这只是一个例子,可以很容易地用适当的seq 语句替换它。
    【解决方案2】:

    如果值是整数,并且只是想对它们进行计数,那么如何

    barplot(table(rbinom(10000, 20000, 0.0001)))
    

    【讨论】:

    • 这在某些情况下很好,但有时您真的希望将这些值合并在一起
    【解决方案3】:

    在这种情况下我通常使用:

     hist(rbinom(1000,2000,0.0001),breaks=function(x) length(unique(x)))
    

    【讨论】:

    • +1 谢谢,这解决了第一部分。关于如何使 x 标签居中的任何建议?
    【解决方案4】:

    还有:

    x <- rbinom(10000, 20000, 0.0001)
    hist(x, br = seq(-0.01, max(x)+1, 1), freq=F, col="black")
    

    col="black" 不是必须的,当然,我只是觉得黑色更易读!)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-29
      • 1970-01-01
      • 2011-10-28
      • 2021-12-14
      • 1970-01-01
      • 2012-01-18
      • 1970-01-01
      • 2014-12-03
      相关资源
      最近更新 更多