R语言数据可视化1—ggplot2画柱状图

目的:将已有的业务表(csv格式),导入到Rstudio中。根据“开始时间”,按月份统计出业务量。画出下图。(注:我选择的业务表中只有1、2、3月的数据)

 

开始吧!!!

1.加载csv格式的数据表,并查看字段名:

##加载数据
khsx <-read.csv("khsx.csv",header = TRUE)
names(khsx)##查看列名

2.加载将要使用的包

##加载包
library(ggplot2) ##画图用的包
library(lubridate) ##提取时间字段月份的包
library(ggthemes)  ##样式主题包

3.数据整合,统计出作图的数据集

##根据月份统计业务量
len<-aggregate(开始时间~factor(month(开始时间)),khsx,length)
##重命名数据框"len"的列名称。
names(len)[1:2]<-c("月份","业务量")

4.作图

##画图
ggplot(len,aes(月份,业务量,fill=月份))+  ##ggplot2的数据层和映射层(单有此层无图)
  geom_bar(position = "dodge",stat = "identity",width = 0.5)+ ##ggplot2的几何图像层(至少要到这一层)
  theme_economist() ##ggplot2的主题层

上面代码解释:在ggplot2中, 所接受的数据集必须为数据框(data.frame)格式, 如上面的"len"数据集,aes(行,列,fill=月份),fill部分为按月份填充默认颜色。

通过 "+"号来连接图层。geom_bar表示画柱状图,position = "dodge"意思为将柱子并列放置,stat是指统计变换;stat='identity'是指不进行统计变换即业务量就是纵。

 

结束!!!

 

所使用包的知识讲解:

1.处理时间字段

提取月份,日,年份数字使用了lubridate包

1 library(lubridate)
2 d<-c("2012-1-10","2013-5-9","2014-6-25")
3 year(d)
4 month(d)
5 day(d)

 

      

posted @ 2017-05-19 16:26  DM_2  阅读(23809)  评论(0编辑  收藏  举报