【问题标题】:How to plot 2 curves on a histogram in base R?如何在基数 R 的直方图上绘制 2 条曲线?
【发布时间】:2015-11-24 19:57:00
【问题描述】:

我用基数 R 制作了这个直方图:

代码如下:

data=read.csv("cholesterol.csv")
newdata=subset(data, data$SEX=="female")
newdata1=subset(data, data$SEX=="male")
hist(newdata$CHOLESTEROL,breaks=10,col=rgb(red = F, green = T, blue = F,
alpha = 0.3), xlim=c(0,350), ylim=c(0,25), xaxs="i", yaxs="i", las=1, main="", xlab="Cholesterol", ylab="Frequentie", border=rgb(red = F, green = T, blue = F, alpha = 0.3))
hist(newdata1$CHOLESTEROL, breaks=10,col=rgb(red = T, green = F, blue = F, alpha = 0.4), border=rgb(red = T, green = F, blue = F, alpha = 0.4), add=T)
legend('topright', c('Female','Male'),fill = rgb(0:1,1:0,0,0.4), bty='n', border = NA)

我现在想在这个直方图上绘制一条曲线,并且我想为每个组(女性和男性)绘制一条不同的曲线。 我尝试了几个突击队(例如lines(density(newdata$CHOLESTEROL), col="red", lty=1, lwd=1)),但没有一个导致曲线。我在互联网上也找不到解决方案,所以我希望任何人都可以帮助我:)

【问题讨论】:

    标签: r histogram curve


    【解决方案1】:

    尝试将probability=TRUE 添加到对hist 的调用中。这将缩放直方图的面积为 1,与 density 的结果相同,以便它们很好地绘制在一起。您上面的代码可能正在添加曲线,但由于缩放比例不同,它看起来像底部的水平线。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-03-19
      • 1970-01-01
      • 1970-01-01
      • 2021-06-02
      • 1970-01-01
      • 1970-01-01
      • 2018-08-17
      相关资源
      最近更新 更多