R qplot - 绘制y轴上的总和而不是计数的两个面

时间:2015-05-24 06:04:59

标签: r ggplot2

是否可以根据地点" A"绘制两个条形刻面?和" B",在每个方面,我展示"年"在x轴上和y轴上的年总和?

这是我建造的玩具示例:

DF<-data.frame(place=c("A", "A", "A", "B", "B"), amt=c(1, 1, 1, 5, 2), year = c(2000, 2000, 2002, 2001, 2002))
DF$year<-as.factor(DF$year)

我尝试使用ddply来获取总和:

sums<-ddply(DF,.(year,place), summarise, sumAmt=sum(amt))

但我不知道如何在qplot

中使用它
qplot(??? , data=sums, facets=.~place)

如果我更换??? =年然后我只是显示计数。我读过我应该尝试使用geom_bar(stat =&#34; identity&#34;)和aes(x = factor(year),y = sumAmt)),但我不明白

1 个答案:

答案 0 :(得分:1)

如果您提供'x'和'y'变量,它将相应地绘制。

qplot(year, sumAmt, data=sums, facets=.~place)

要获得条形图,请指定geom

qplot(year, sumAmt, data=sums, facets=.~place, geom='bar', stat='identity')

您也可以在不创建“总和”数据集的情况下执行此操作

qplot(year, amt, data=DF, stat='summary', fun.y='sum', facets=.~place)

如果您使用ggplot,则语法为

 ggplot(DF, aes(x=year, y=amt))+
            stat_summary(fun.y='sum', geom='point')+
            facet_wrap(~place)