在R中创建具有适当计数和标签的直方图

时间:2015-02-23 20:56:50

标签: r histogram

我有一个数据集(dat),我在这里编写硬编码:

dat = c(5, 9, 5, 6, 5, 6, 8, 4, 6, 4, 6, 6, 4, 6, 4, 6, 5, 5, 6, 5, 6, 7, 4, 5, 4, 4, 6, 4, 4, 5, 7, 6, 3, 5, 5, 5, 5, 4, 6, 3, 6, 5, 4, 6, 5, 8, 4, 8, 5, 5, 4, 4, 6, 6, 4, 6, 4, 7, 4, 1, 4, 6, 3, 6, 3, 4, 6, 6, 3, 6, 6, 2, 5, 5, 4, 7, 6)
table(dat)

通过对数据执行上面的表函数,我看到值为1时应该有1的计数,对于值2应该有1的计数。但是,当我使用hist绘制数据时,我得到一个数为2.

hist(dat, col="lightgreen", labels = TRUE, xlim=c(0,10), ylim=c(0,27))

这是第一个问题。另一个问题是我试图绘制相应bin的x标签值(其中应该有11个bin,标记为0,1,2,3,4,5,6,7,8,9,10)。即使我没有0值或10个值,我想说明它们的计数为0,并且有自己的箱子 - 就像其他标签一样。我怎么能做到这一点?

感谢。

2 个答案:

答案 0 :(得分:1)

你的意思是这样的:

hist(dat, col="lightgreen", labels = TRUE, 
  xlim=c(0,10), ylim=c(0,27), breaks = 0:10, at=0:10)

答案 1 :(得分:1)

am = hist(dat, col="lightgreen", labels = TRUE, 
     breaks=seq(min(dat)-2,max(dat)),
     axes=F)
axis(2)
axis(1,at=am$mids,seq(min(dat)-1,max(dat)))