如何在ggplot中绘制条形图,其中我的箱子是年 - 月

时间:2013-07-09 20:28:52

标签: r ggplot2

mydates<-data.frame(effectiveDate=as.Date(c("2012-1-1","2012-1-1","2012-2-1","2012-10-1","2012-4-1","2012-8-1","2013-1-1")))

如何使用ggplot绘制条形图,其中条形图是年 - 月?在这种情况下,有13个酒吧:“2012年1月”至“2013年1月”,每个酒吧高度将代表该月份的每个日期的数量。

2 个答案:

答案 0 :(得分:1)

我认为这有效:

修改:根据以下评论

mydates$months <- month.abb[as.numeric(format(mydates[, 1], format = "%m"))]
mydates$Months <- paste(mydates$months, format(mydates[, 1], format = "%y"))
mydates$Months <- factor(mydates$Months, levels = paste(month.abb, c(rep(12, 12), 13)))

ggplot(mydates, aes(Months)) + geom_bar()+ scale_x_discrete(drop=FALSE) +
    theme(axis.text.x = element_text(angle=90, vjust=.3)) 

可以使用coord_flip()或使用theme(axis.text.x = element_text(angle=90, vjust=.3))

使条形水平来调整标签

enter image description here

答案 1 :(得分:1)

这很好用:

ggplot(data = mydates, aes(x = effectiveDate)) + geom_bar() 
ggsave(filename = "~/temp/temp.png", width = 6, height = 3, dpi = 150)

enter image description here