python中關於數據分析pyecharts柱狀圖知識詳解(小白必看)


前言

本文的文字及圖片來源於網絡,僅供學習、交流使用,不具有任何商業用途,如有問題請及時聯系我們以作處理。

PS:如有需要Python學習資料的小伙伴可以點擊下方鏈接自行獲取

Python免費學習資料、代碼以及交流解答點擊即可加入


 

一、pyecharts簡介

pyecharts主要基於Web瀏覽器進行顯示,繪制的圖形比較多,包括折線圖、柱狀圖、餅圖、漏斗圖 地圖和極坐標圖等。使用pyecharts繪圖代碼量很少,但繪制的圖形比較美觀。

pyecharts 分為 v0.5.X 和 v1 兩個大版本,v0.5.X 和 v1 間不兼容,v1 是一個全新的版本 v0.5.X支持 Python2.7,3.4+。

經開發團隊決定,0.5.x 版本將不再進行維護,0.5.x 版本代碼位於 05x 分支 ,v1僅支持 Python3.6+,新版本系列將從 v1.0.0 開始。

本文所講主要基於 pyecharts 1.7.1 版本進行展示 安裝命令為:


pip install pyecharts==1.7.1

二、pyecharts柱狀圖/條形圖全解

1.基本柱狀圖/條形圖

'''
如有需要Python學習資料的小伙伴可以加群領取:1136201545
'''


from pyecharts import options as opts from pyecharts.charts import Bar l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日'] l2=[100,200,300,400,500,400,300] bar = ( Bar() .add_xaxis(l1) .add_yaxis("基本柱狀圖", l2) .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副標題")) ) bar.render_notebook() 

 

參數介紹:
add_xaxis:添加橫坐標,需傳入列表 add_yaxis:添加縱坐標,需傳入列表,切列表元素為數值

2.添加坐標軸名稱


from pyecharts import options as opts from pyecharts.charts import Bar l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日'] l2=[100,200,300,400,500,400,300] bar = ( Bar() .add_xaxis(l1) .add_yaxis("基本柱狀圖", l2) .set_global_opts( title_opts=opts.TitleOpts(title="Bar-基本示例"), yaxis_opts=opts.AxisOpts(name="人流量"), xaxis_opts=opts.AxisOpts(name="星期"),) ) bar.render_notebook() 

3.多個縱坐標的柱狀圖/條形圖


from pyecharts import options as opts from pyecharts.charts import Bar l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日'] l2=[100,200,300,400,500,400,300] l3=[300,400,500,400,300,200,100] bar = ( Bar() .add_xaxis(l1) .add_yaxis("l2", l2) .add_yaxis("l3", l3) .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副標題"), toolbox_opts=opts.BrushOpts(),) ) bar.render_notebook() 

 

opts.BrushOpts()為圈選工具,如圖形右上角所示

4.設置柱狀圖間隔和顏色


from pyecharts import options as opts from pyecharts.charts import Bar l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日'] l2=[100,200,300,400,500,400,300] bar = ( Bar() .add_xaxis(l1) .add_yaxis("l2",l2,category_gap=0, color='#FFFF00') .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副標題")) ) bar.render_notebook() 

 

category_gap:設置間隔

color:設置柱狀圖顏色

5.橫向柱狀圖


from pyecharts import options as opts from pyecharts.charts import Bar l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日'] l2=[100,200,300,400,500,400,300] l3=[300,400,500,400,300,200,100] bar = ( Bar() .add_xaxis(l1) .add_yaxis("l2", l2) .add_yaxis("l3", l3) .reversal_axis() .set_series_opts(label_opts=opts.LabelOpts(position="right")) .set_global_opts(title_opts=opts.TitleOpts(title="橫向柱狀圖")) ) bar.render_notebook() 

 

reversal_axis將圖形反轉

position="right"表示將數值在圖形右側顯示,同理left、center分別表示左側和中間

6.顯示最大值、最小值和平均值

a.標記線


from pyecharts import options as opts from pyecharts.charts import Bar import random l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日'] l2=[100,200,300,400,500,400,300] bar = ( Bar() .add_xaxis(l1) .add_yaxis("l2", l2) .set_global_opts(title_opts=opts.TitleOpts(title="標記線柱狀圖")) .set_series_opts( label_opts=opts.LabelOpts(is_show=False), markline_opts=opts.MarkLineOpts( data=[ opts.MarkLineItem(type_="min", name="最小值"), opts.MarkLineItem(type_="max", name="最大值"), opts.MarkLineItem(type_="average", name="平均值"), ] ), ) ) bar.render_notebook() 

 

b.標記點


from pyecharts import options as opts from pyecharts.charts import Bar import random l1=['星期一','星期二','星期三','星期四','星期五','星期七','星期日'] l2=[100,200,300,400,500,400,300] bar = ( Bar() .add_xaxis(l1) .add_yaxis("l2", l2) .set_global_opts(title_opts=opts.TitleOpts(title="標記線柱狀圖")) .set_series_opts( label_opts=opts.LabelOpts(is_show=False), markpoint_opts=opts.MarkPointOpts( data=[ opts.MarkPointItem(type_="min", name="最小值"), opts.MarkPointItem(type_="max", name="最大值"), opts.MarkPointItem(type_="average", name="平均值"), ] ), ) ) bar.render_notebook() 

7.旋轉x軸坐標


from pyecharts import options as opts from pyecharts.charts import Bar import random l1=['很長很長很長很長很長的坐標軸{}'.format(i) for i in range(10)] l2=[random.choice(range(10,100,10)) for i in range(10)] bar = ( Bar() .add_xaxis(l1) .add_yaxis("l2", l2) .set_global_opts(xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)), title_opts=opts.TitleOpts(title="Bar-旋轉X軸標簽", subtitle="解決標簽名字過長的問題")) ) bar.render_notebook() 

 

rotate=-15表示將坐標軸逆時針旋轉15度

8.橫坐標縮放

a.整體縮放(type_="inside")


from pyecharts import options as opts from pyecharts.charts import Bar import random l1=['{}日'.format(i) for i in range(1,31)] l2=[random.choice(range(100,3100,100)) for i in range(1,31)] bar = ( Bar() .add_xaxis(l1) .add_yaxis("l2", l2) .set_global_opts(title_opts=opts.TitleOpts(title="區域縮放柱狀圖"), datazoom_opts=opts.DataZoomOpts(type_="inside")) ) bar.render_notebook() 

 

b.左右滑動縮放


from pyecharts import options as opts from pyecharts.charts import Bar import random l1=['{}日'.format(i) for i in range(1,31)] l2=[random.choice(range(100,3100,100)) for i in range(1,31)] bar = ( Bar() .add_xaxis(l1) .add_yaxis("l2", l2) .set_global_opts(title_opts=opts.TitleOpts(title="區域縮放柱狀圖"), datazoom_opts=opts.DataZoomOpts(type_="slider")) ) bar.render_notebook() 

 

本次主要介紹了pyecharts柱狀圖的常見形式,后續會出來pyecharts柱狀圖的高階用法,敬請關注!


免責聲明!

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



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