我正在根据原籍国和年龄段的移民的丹麦数据集。我对数据进行了转换,以便能够查看每个年龄段的主要原始国家。 我正在使用facet_wrap进行绘图。我想要做的是,因为不同年龄段的人来自不同的地区,因此要在每个方面为一个轴显示不同的一组值。例如,0到10岁的人来自x,y和z国,而10到20岁的人来自q,r,z等国家。facet_wrap中的不同轴值
在我当前的版本中,它显示了整个值集合,包括未进入前10名的国家/地区。我想仅显示每个方面的前十个原始国家,实际上具有不同的轴标签每。 (并且,如果可能的话,按每个方面从高到低排序)。 这是我到目前为止有:
library(ggplot2)
library(reshape)
###load and inspect data
load(url('http://dl.dropbox.com/u/7446674/dk_census.rda'))
head(dk_census)
###reshape for plotting--keep just a few age groups
dk_census.m <- melt(dk_census[dk_census$Age %in% c('0-9 år', '10-19 år','20-29 år','30-39 år'),c(1,2,4)])
###get top 10 observations for each age group, store in data frame
top10 <- by(dk_census.m[order(dk_census.m$Age,-dk_census.m$value),], dk_census.m$Age, head, n=10)
top10.df<-do.call("rbind", as.list(top10))
top10.df
###plot
ggplot(data=top10.df, aes(x=as.factor(Country), y=value)) +
geom_bar(stat="identity")+
coord_flip() +
facet_wrap(~Age)+
labs(title="Immigrants By Country by Age",x="Country of Origin",y="Population")
其实,我很高兴,这即使他们不我确实考虑过这个问题,并且认为这是一些其他动物的边界,但是因为数字尺度可以设置为“自由”,所以我认为对于分类问题也是如此,gridExtra提示是一个很好的方法我可以在其他情况下使用。 – ako 2013-03-02 22:55:06