我正在尝试复制stat_density文档中所示的条件密度图,但我需要使用 ggplot 而不是 qplot 来完成,因为我需要对图进行刻面。但是,我的数据在每个方面都有不相等的行数,当我绘制它时,我得到了奇怪的结果。这是一个 MRE:
test.df = data.frame(model=c(rep("A",100),rep("B",50),rep("C",20)),
as.factor(cnt=c(rbinom(100,1,0.5),rbinom(50,1,0.5),rbinom(20,1,0.5))),
xvar=c(seq(1,100),seq(1,50),seq(1,20)))
# This works fine, ignoring the model facets.
ggplot(test.df,aes(x=xvar,y=..count..,fill=cnt)) + geom_density(position="fill")
# Something's wrong with this one.
ggplot(test.df,aes(x=xvar,y=..count..,fill=cnt)) + geom_density(position="fill") +
facet_wrap(~model)
这是一个忽略模型的示例(如果您对每个组进行子集化和单独绘制,它看起来是一样的):
与刻面相比:
关于我在这里可能做错的任何想法?
编辑:这是在 OSX 10.8.2、ggplot2 0.9.3.1 下使用 R 2.15.1 / Rstudio 0.97.314