0
當我試圖用R和ggplot做一些分組直方圖時,我發現了一個不同的解決方案。有人可以幫我找到問題嗎?我想這是Y軸的東西。如何用ggplot製作具有正態分佈的分組直方圖?
首先我創建部分子集
Immature2=subset(dataHistogram2, Sex=='I')
Female2=subset(dataHistogram2, Sex=='F')
Male2=subset(dataHistogram2, Sex=='M')
隨着基礎R
hist(Immature2$Diameter, prob=TRUE ,breaks= seq(55,125, by=5), ylim=c(0,0.05), xlim=c(55,125), col=rgb(0,1,0,1/2), main="", xlab= "Diameter", ylab="Densiteit")
hist(Female2$Diameter, prob=TRUE, add=TRUE, breaks= seq(55,125, by=5), col=rgb(1,0,0,1/2))
hist(Male2$Diameter, prob= T,breaks=seq(55,125, by=5), add=T, col=rgb(0,0,1,1/2))
x=seq(55,125,0.01)
curveImmature2<-curve(dnorm(x,mean=mean(Immature2$Diam), sd=sd(Immature2$Diam)), add= TRUE, col=rgb(0,1,0,1/2), lwd=2)
curveFemale2 <- curve(dnorm(x,mean=mean(Female2$Diam), sd=sd(Female2$Diam)), add= TRUE, col= rgb(1,0,0,1/2), lwd=2)
curveMale2 <- curve(dnorm(x, mean=mean(Male2$Diam), sd=sd(Male2$Diam)), add= TRUE, col=rgb(0,0,1,1/2), lwd=2)
隨着ggplot
ggplot(dataHistogram2, aes(x=Diameter))+ geom_histogram(binwidth=5, aes(y=..density.., colour=Sex, fill= Sex), position="identity", alpha=0.5)+xlim(55,125)
所以我的問題: *它是如何來,我在我的ggplot條是從基礎R有什麼不同? *如何繪製我的不同子集在直方圖的正態分佈上GGPLOT2
非常感謝的快速反應加入!它解決了!我仍然有一個問題,爲什麼我的兩個圖形有不同的高度(你可以在上面的圖片中看到它,例如,如果我使用ggplot) – Boris
,你可以接受答案。至於你的問題。這也發生在我之前,我相信這可能是由於密度估計(http://www.inside-r.org/r-doc/stats/density)。是的,藍色條墜落到115,但115旁邊的條也稍高。 – MLavoie