R的频率百分比分布直方图

时间:2015-03-09 12:37:27

标签: r

我是R的新手并且抱歉这个简单的问题。我想计算h1和h2的百分比频率分布。如何在一个图中组合h1和h2?我尝试了以下代码。

    h1=c(5.18,4.61,3.30,7.58,3.00,3.80,1.95,2.67,2.77,2.73,2.33,3.36,3.50,1.91,4.25,3.87,2.86,2.26,2.00,3.86,3.33,3.59,4.00)
h2=c(2.1,2.1,2.6,2,3.6,2,2.7,1.8,3.1,3.9,3.8,2.6,1.9,2.6,2.1,3.9,2.7,1.8,2.1,2.3,2.2,2.6,1.8,2.3,2.3,3.7,3.3,1.9,2.4,2.6,2.4,3.4,2.4,2.2,1.8,2.1,2,1.2,3.9,1.9,3.4,2,2.2,2.3,2.6,2,3,1.8,1.6,1.5,2.6,3.2,2.3)
h = hist(h1)
h$density = h$counts/sum(h$counts)*100
plot(h, freq=F, ylab='Percentage') 

1 个答案:

答案 0 :(得分:0)

使用您的数据尝试类似这样的

首先定义绘图的xlimits和直方图的断点

    xLimits <- range(c(h1, h2))
    breakPoints <- seq(xLimits[1], xLimits[2], length.out = 20)

现在按照你之前的方式计算直方图

    hist1 <- hist(h1, breaks = breakPoints, plot = F)
    hist1Percentage = hist1$counts/sum(hist1$counts)*100

    hist2 <- hist(h2, breaks = breakPoints, plot = F)
    hist2Percentage = hist2$counts/sum(hist2$counts)*100

最终将它们绘制在同一个情节

    barplot(hist1Percentage, col = "#ff000050")
    barplot(hist2Percentage, col = "#0000ff50", add = T)

你还可以看一下我对此做的一篇小博文。

http://www.rmnppt.com/repeatedDistributions.html

我希望它有所帮助: - )