柱状图添加数字标签_Python之利用Plotnine作图(一)——简单柱状图
NO.252
2020.01.05
工欲善其事,必先利其器
//
- 前言 -
◆ ◆ ◆ ◆
今天,小咖帶大家利用Python的plotnine制作簡單柱狀圖。
R語言有一個強大的繪圖工具ggplot2,而plotnine則是Python中的ggplot2。今天,小咖就帶大家來學習plotnine這一工具包,并以簡單的柱狀圖入手,最終將得到如下效果圖。
資料來源:西瓜財經資訊
資料來源:西瓜財經資訊
- Plotnine制作柱狀圖 -
◆ ◆ ◆ ◆
第一步:安裝各種包
資料來源:西瓜財經資訊
安裝plotnine是本文的重點。在cmd中輸入pip install plotnine進行安裝,如果報錯則可根據報錯原因從網絡查詢解決方案。但經過反復試驗,發現報錯主要源于python版本不支持plotnine的問題。因此,通過卸載spyder然后從如下網站下載最新版本spyder便可以解決。
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=D
資料來源:西瓜財經資訊
第二步:導入數據
資料來源:西瓜財經資訊
(1)首次使用Python的wind接口時,需要進行如下操作:wind客戶端——量化——修復插件——修復Python接口。
(2)在導入“包”時已經導入了Windpy。
(3)語句需要以w.start() 開始,否則所有與wind相關的程序都無法運行,但只要運行一次后不用重復運行。
(4)通過wss函數,得到2020年申萬行業年漲跌幅數據(經過對wind的探索,發現通過增加"error,"和“usedf=True”可以直接生成dateframe)。
第三步:數據處理
資料來源:西瓜財經資訊
(1)對數據表進行復制、拆分、刪除等一系列操作。
(2)對于X軸變量為類別型的數據(本文是申萬行業),在使用plotnine繪圖時,系統會默認將X軸類別按照字母順序繪制柱形。
如果單純使用data=data.sort_values(['2020年漲跌幅'], ascending=[True])對漲跌幅數據進行排序,并不會改變X軸分類數據的類別,所以不會改變柱狀圖的繪制順序。
因此,要通過如下語句控制并改變原有X軸分類數據順訊,最終得到如下表。
data=data.sort_values(['2020年漲跌幅'], ascending=[True])
data['申萬行業名稱']=pd.Categorical(data['申萬行業名稱'],categories=data['申萬行業名稱'],ordered=True)
資料來源:西瓜財經資訊
第四步:圖形制作
資料來源:西瓜財經資訊
(1)ggplot()。底層繪圖工具,用于創建圖象,傳入數據來源和映射。如果在映射里面添加fill參數,可以將數據以顏色區分。
(2)geom_XX()。設定幾何圖層,如柱狀圖,散點圖,直方圖,折線圖等等。
資料來源:網絡
(3)geom_text。設置標簽文本,同樣需要添加映射。
(4)scale。度量調整,調整顏色、大小、形狀等。
資料來源:網絡
(5)Labels。標簽調整。
資料來源:網絡
(6)Theme。主題設定,調整圖表的細節,包括圖表背景顏色、網格線的間隔和顏色、中文設置、圖例顯示、坐標軸標簽字體及角度等。注意,如果圖形中有中文字符,需要加入如下語句,否則將無法顯示中文。
text=element_text(family = "SimHei")
(7)coord_flip() 。加入此語句可以將縱向直方圖轉換為橫向直方圖。
注意:各圖表輸入信息用“+”來連接
資料來源:西瓜財經資訊
資料來源:西瓜財經資訊
資料來源:
https://blog.csdn.net/weixin_42628425/article/details/89786545
- 后言 -
◆ ◆ ◆ ◆
后續,小咖不僅將更新市場分析觀點,也將不時推出利用Excel(VBA)、python等工具提升金融分析效率的小貼士,歡迎大家關注公眾號,一同討論及分享。
總結
以上是生活随笔為你收集整理的柱状图添加数字标签_Python之利用Plotnine作图(一)——简单柱状图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js map 箭头_JS异常函数之箭头函
- 下一篇: 建立索引和主外约束_Mysql索引原理