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)

 

      


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM