R語言數據可視化繪圖bar chart條形圖實現示例
時光飛逝,歲月如梭,轉眼又是一年過去瞭,本小仙怎麼還是一事無成呢!
轉念一想,這種事也不是一次兩次瞭,再多一個又何妨,哈哈!
回歸正題,今天就給大傢介紹下直方圖(histogram)的“好兄弟”——條形圖(bar chart)。
假設小仙同學現在要幫一傢書店用圖形展示2018年最受大傢歡迎的
書目,數據如下圖。
條形圖畫出來還挺好看,可是跟小仙想象中的可不一樣。明明我的數據是按照銷量從高到低排列的,為什麼畫出來卻是按照字母順序排列的呢?
使用瞭對因子進行排序的函數reorder()之後,就變成瞭下圖這個樣子,跟想象中的還是不一樣。
在網上搜瞭半天教程,也沒有找到簡單的方法進行對因子降序排序,於是小仙同學就大膽的在排序向量參數前面加瞭個減號,竟然沒有報錯成功瞭,意外的驚喜(有時候大膽嘗試也會有驚喜哦,網上找教程還要先看懂別人的代碼,有時候發現看半天看懂瞭對自己並沒有幫助)。
具體的作圖過程如下。
Step1. 繪圖數據的準備
首先還是要把你想要繪圖的數據調整成R語言可以識別的格式excel中保存成csv格式。
Step2. 繪圖數據的讀取
data<-read.csv(“your file path”, header = T)
Step3. 繪圖所需package的調用
library(ggplot2) data$書名<-factor(data$書名) data$書名<-reorder(data$書名,-data$銷量)
Step4. 因子水平排序
data$書名<-factor(data$書名) data$書名<-reorder(data$書名,-data$銷量)
Step5. 繪圖
p<-ggplot(data,aes(x=書名,y=銷量,fill=書名)) + geom_bar(stat="identity",width = 0.5) + theme(axis.text.x = element_text(angle = 45, hjust = 0.8, vjust = 0.9))+ xlab("銷量排行前十")+theme(legend.position="none")+ scale_y_continuous("銷量",breaks = c(0,200000,400000,600000),labels = c("0","200000","400000","600000")) p
更新:有同學問怎麼能把銷量在400000的柱子畫成同一種顏色,小仙今天終於克服懶惰來更新瞭
其實也很簡單,最主要的是要再加一列標簽來表示顏色的分類
新的作圖代碼
效果圖
如果按照我的教程畫不出來,麻煩請告訴我
看別人的教程畫不出來可能是你的問題,看我的教程畫不出來一定是我的問題
更多關於R語言bar chart條形圖繪圖的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- R語言使用ggplot繪制畫中畫細節放大的方法
- R語言學習ggplot2繪制統計圖形包全面詳解
- R語言作圖之直方圖histogram繪制過程詳解
- R語言數據可視化ggplot添加左右y軸繪制天貓雙十一銷售圖
- 使用R語言繪制棒棒糖圖火柴桿圖教程