【问题标题】:Barplot for two groups using ggplot2使用 ggplot2 对两组进行条形图
【发布时间】:2016-02-13 11:55:37
【问题描述】:

我知道这已经被问过很多次了。但是,我找不到我的问题的解决方案。

我用一个假人扩展了mtcars 数据集,表明汽车是由汽车卖家出售还是购买(购买= 0 -> 出售,购买= 1 -> 购买)和交易日期:

data(mtcars)
mtcars$buy <- c(0,0,1,0,0,1,1,0,0,1,0,1,0,0,0,1,1,0,0,0,1,0,1,0,1,1,0,0,0,1,0,1)
mtcars$date <- as.Date(c('2011-01-01','2011-01-06','2011-01-10','2011-01-20','2011-01-23',
             '2011-01-25','2011-01-31','2011-02-01','2011-02-06','2011-02-15',
             '2011-02-22','2011-02-26','2011-03-05','2011-03-15','2011-03-20',
             '2011-03-22','2011-03-27','2011-04-10','2011-04-25','2011-04-28',
             '2011-05-05','2011-05-15','2011-06-05','2011-06-06','2011-06-17',
             '2011-06-25','2011-07-05','2011-07-11','2011-07-25','2011-07-31',
             '2011-08-23','2011-08-25'))

现在我想使用ggplot 获得一个条形图,其中每月的买卖作为单独的条形。但是,我只能创建所有交易的摘要图:

mtcars$month <- as.Date(cut(mtcars$date, breaks="month")) 
mtcars$counter <- 1
ggplot(mtcars, aes(month,counter)) + stat_summary(fun.y=sum, geom="Bar")

如何创建相同的图表,但每个月有两个条形图(一个是购买数量,另一个是销售数量)?

感谢您的帮助!

【问题讨论】:

    标签: r ggplot2 bar-chart


    【解决方案1】:

    我认为购买向量需要是字符串而不是数字。

    ggplot(mtcars, aes(month)) + geom_bar(aes(fill=as.character(buy)),position = "dodge")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-22
      • 1970-01-01
      • 1970-01-01
      • 2012-09-10
      • 1970-01-01
      相关资源
      最近更新 更多