如果没有金额聚合的中间步骤,我怎样才能得到相同的图?
发布时间:2020-12-13 20:42:09 所属栏目:百科 来源:网络整理
导读:如果没有聚合列的中间计算,我怎样才能得到相同的图. 我有这些数据: set.seed(1234)dat - data.frame(month = gl(3,1,20),family= gl(5,amount= sample(1:3,20,rep=TRUE)) 使用这段代码,我得到了一个条形图.每个条形图,是按家庭和按月计算的金额之和.首先,我
如果没有聚合列的中间计算,我怎样才能得到相同的图.
我有这些数据: set.seed(1234) dat <- data.frame(month = gl(3,1,20),family= gl(5,amount= sample(1:3,20,rep=TRUE)) 使用这段代码,我得到了一个条形图.每个条形图,是按家庭和按月计算的金额之和.首先,我创建了一个新的aggegate列V1. ## I am using data.table,you can get it by ddply also library(data.table) dd <- data.table(dat) hh <- dd[,sum(amount),by=list(month,family)] 然后我使用这段代码绘图: ggplot(data=hh,aes(x=month,y=V1,fill=family))+ geom_bar(stat = "identity") 得到这个情节: 这有效,但我想要更简单的方法.我认为使用stat_sum或其他ggplot2技术我可以在没有中间聚合步骤的情况下执行此操作.这样的事情: ## don't run this doesn't work ggplot(data=dat,y=amount,fill=family))+ geom_bar(stat = "sum") ggplot(data=dat,fill=family,group=family))+ geom_bar(stat = "summary",fun.y=sum) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |