相关疑难解决方法(0)

在R中的ggplot2中一起使用stat_function和facet_wrap

我试图用ggplot2绘制格子类型数据,然后在样本数据上叠加正态分布,以说明基础数据的正常程度.我想让顶部的正常dist与面板具有相同的均值和stdev.

这是一个例子:

library(ggplot2)

#make some example data
dd<-data.frame(matrix(rnorm(144, mean=2, sd=2),72,2),c(rep("A",24),rep("B",24),rep("C",24)))
colnames(dd) <- c("x_value", "Predicted_value",  "State_CD")

#This works
pg <- ggplot(dd) + geom_density(aes(x=Predicted_value)) +  facet_wrap(~State_CD)
print(pg)
Run Code Online (Sandbox Code Playgroud)

这一切都很好,并产生了一个很好的三个数据面板图.如何在顶部添加正常dist?看来我会使用stat_function,但这会失败:

#this fails
pg <- ggplot(dd) + geom_density(aes(x=Predicted_value)) + stat_function(fun=dnorm) +  facet_wrap(~State_CD)
print(pg)
Run Code Online (Sandbox Code Playgroud)

似乎stat_function与facet_wrap功能不相符.我如何让这两个玩得很好?

- - - - - - 编辑 - - - - -

我试图整合下面两个答案中的想法,但我仍然没有:

使用这两个答案的组合我可以一起破解这个:

library(ggplot)
library(plyr)

#make some example data
dd<-data.frame(matrix(rnorm(108, mean=2, sd=2),36,2),c(rep("A",24),rep("B",24),rep("C",24)))
colnames(dd) <- c("x_value", "Predicted_value",  "State_CD")

DevMeanSt <- ddply(dd, c("State_CD"), function(df)mean(df$Predicted_value)) 
colnames(DevMeanSt) <- c("State_CD", "mean")
DevSdSt <- ddply(dd, c("State_CD"), …
Run Code Online (Sandbox Code Playgroud)

r graph ggplot2

22
推荐指数
3
解决办法
1万
查看次数

标签 统计

ggplot2 ×1

graph ×1

r ×1