【发布时间】:2010-08-16 07:00:32
【问题描述】:
这个直方图真的很丑:
hist(rbinom(10000, 20000, 0.0001),freq=F,right=F)
我不希望我的条之间有空格。我尝试了不同的breaks= 方法,但它们都产生了相似的结果。有什么想法吗?
我还希望将每个 bin 值(或平均值)打印在其条形的 中心 下方。
【问题讨论】:
这个直方图真的很丑:
hist(rbinom(10000, 20000, 0.0001),freq=F,right=F)
我不希望我的条之间有空格。我尝试了不同的breaks= 方法,但它们都产生了相似的结果。有什么想法吗?
我还希望将每个 bin 值(或平均值)打印在其条形的 中心 下方。
【问题讨论】:
这是一种使标签居中的方法:
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))
【讨论】:
breaks=0:(max(x)+1) 不够通用(在某些情况下,您希望分箱而不是每个 int 的条形)
seq 语句替换它。
如果值是整数,并且只是想对它们进行计数,那么如何
barplot(table(rbinom(10000, 20000, 0.0001)))
【讨论】:
在这种情况下我通常使用:
hist(rbinom(1000,2000,0.0001),breaks=function(x) length(unique(x)))
【讨论】:
还有:
x <- rbinom(10000, 20000, 0.0001)
hist(x, br = seq(-0.01, max(x)+1, 1), freq=F, col="black")
(col="black" 不是必须的,当然,我只是觉得黑色更易读!)
【讨论】: