为每个变量(因子)级别创建多个直方图,每个级别都有自己的比例

时间:2013-06-12 22:57:38

标签: r ggplot2 histogram

我想为因子变量“zip”(y轴是“count”)的每个级别创建27个变量“billed”(数字,x轴)的直方图。 “zip”有27个级别。

有没有办法在一个图表(3X9)上显示27个直方图,没有覆盖?

我使用ggplot2尝试了这个:

p<-ggplot(dat,aes(x=billed))+geom_histogram(aes(fill=zip),binwidth=1.5)
+facet_wrap(~zip,ncol=9)

新问题是所有这些直方图具有相同的比例。但我的数据的y轴/ x轴在不同的拉链之间变化很大。有没有办法根据自己的尺度创建这些直方图?

我不介意使用常规的r函数,如果这也可以通过hist()来实现,因为ggplot2中的美学特征对我的情况没有用。

1 个答案:

答案 0 :(得分:1)

require(lattice)
histogram( ~ billed | zip , data=dat, 
           layout=c(3,9) , scales= list(y=list(relation="free"),
                                        x=list(relation="free") ) )

 #worked example from ?histogram page:
 histogram( ~ height | voice.part, data = singer, 
            layout = c(2,4), scales=list(y=list(relation="free"),
                                         x=list(relation="free") ) )