Я пытаюсь визуализировать, насколько близки мои данные к нормальному, но у меня возникают проблемы при одновременном использовании stat_function и facet_grid.
Мой первый подход здесь:
example<-mat.or.vec(50,2)
example[1:25,1]<-"Group 1"
example[26:50,1]<-"Group 2"
example[1:25,2]<-rnorm(25,0,1)
example[26:50,2]<-rnorm(25,3,2)
example<-as.data.frame(example)
colnames(example)<-c("group","score")
example$score<-as.numeric(as.character(example$score))
ggplot(example,aes(x=as.numeric(score),color=group,fill=group))+
geom_histogram(binwidth = 0.5,alpha=0.5,aes(y=..density..))+
stat_function(fun = dnorm, args = list(mean = 0, sd = 1))+
stat_function(fun = dnorm, args = list(mean =3, sd =2))+
guides(fill=guide_legend(title="Group"),color=FALSE)+
facet_grid(group~.)+scale_fill_manual(labels=c("Treatment","Control"),values=c("blue","pink"))+
scale_color_manual(values=c("blue","pink"))+
xlab("Score")+
ylab("Density")+
scale_x_continuous(limits=c(-3,7))+
theme(legend.background = element_blank(),
legend.box.background = element_rect(size=0.5,color="black"),
legend.key = element_blank(),
legend.text=element_text(face="bold",color="black",size=15),
legend.title = element_blank(),
legend.key.width = unit(3,"line"),
text = element_text(size = 15),
axis.text.x = element_text(face = "bold", color = "black", size = 15),
axis.text.y = element_text(face = "bold", color = "black", size = 15),
axis.title = element_text(face="bold",color="black",size="15"),
panel.background=element_blank(),panel.border = element_rect(colour = "black", fill=NA, size=1))
Это возвращает график , что не совсем то, что я ищу.Я хочу, чтобы только кривая, относящаяся к каждой группе, отображалась в каждом фасете.(Я также хотел бы избавиться от этих серых ярлыков, пока мы на нем.)
Есть идеи?Я также попробовал одну функцию stat_function с mean = c (0,3) и sd = c (1,2), но она возвращает многовариантный Normal, что, безусловно, не то, что я хочу.
Спасибо!