Python pyecharts繪制柱狀圖

一、pyecharts繪制柱狀圖語法簡介

柱狀/條形圖,通過柱形的高度/條形的寬度來表現數據的大小。

Bar.add() 方法簽名:

add(name, x_axis, y_axis,
is_stack=False,
bar_category_gap=’20%’, **kwargs)

  • name->str 圖例名稱
  • x_axis->list x坐標軸數據
  • y_axis->list y坐標軸數據
  • is_stack->bool 數據堆疊,同個類目軸上系列配置相同的stack值可以堆疊放置
  • bar_category_gap->int/str 類目軸的柱狀距離,當設置為0時柱狀是緊挨著(直方圖類型),默認為’20%’
  • mark_point 標記點 取值為:average min max
  • mark_line 標記線 取值為:average min max
  • is_convert=True x軸和y軸交換
  • is_label_show=True 顯示數據標簽
  • xaxis_rotate=30, yaxis_rotate=30 旋轉x軸或y軸的標簽
  • label_color 設置柱子顏色

二、繪制普通柱狀圖

from pyecharts import Bar
#Note: 全局配置項要在最後一個 add() 上設置,否側設置會被沖刷掉。

attr = ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子","床墊"]
v1 = [5, 20, 36, 10, 75, 90 , 30]
v2 = [10, 25, 8, 60, 20, 80 , 50]
bar = Bar("柱狀圖數據堆疊示例") #設置標題
bar.add("商傢A", attr, v1,mark_point=["average"],is_label_show=True)
bar.add("商傢B", attr, v2,mark_line=["min", "max"],is_label_show=True)
bar.render(r'C:\Users\ASUS\Desktop\重新開始\Python用pyecharts繪圖\柱狀圖1.html') #生成HTML文件


三、繪制堆疊柱狀圖

from pyecharts import Bar

#Note: 全局配置項要在最後一個 add() 上設置,否側設置會被沖刷掉。
#is_stack->bool 數據堆疊,同個類目軸上系列配置相同的stack值可以堆疊放置
attr = ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子","床墊"]
v1 = [5, 20, 36, 10, 75, 90 , 30]
v2 = [10, 25, 8, 60, 20, 80 , 50]
bar = Bar("柱狀圖數據堆疊示例") #設置標題
bar.add("商傢A", attr, v1,mark_point=["average"],is_label_show=True,is_stack=True)
bar.add("商傢B", attr, v2,mark_line=["min", "max"],is_label_show=True,is_stack=True)
bar.render(r'C:\Users\ASUS\Desktop\重新開始\Python用pyecharts繪圖\柱狀圖1.html') #生成HTML文件

四、繪制橫向柱狀圖

from pyecharts import Bar

#is_convert=True x軸和y軸交換
#Note: 全局配置項要在最後一個 add() 上設置,否側設置會被沖刷掉。

attr = ["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子","床墊"]
v1 = [5, 20, 36, 10, 75, 90 , 30]
v2 = [10, 25, 8, 60, 20, 80 , 50]
bar = Bar("柱狀圖數據堆疊示例") #設置標題
bar.add("商傢A", attr, v1,mark_point=["average"],is_label_show=True,is_convert=True)
bar.add("商傢B", attr, v2,mark_line=["min", "max"],is_label_show=True,is_convert=True)
bar.render(r'C:\Users\ASUS\Desktop\重新開始\Python用pyecharts繪圖\柱狀圖1.html') #生成HTML文件

五、pyecharts柱狀圖datazoom案例

六、對應pyecharts柱狀圖datazoom案例的代碼我用page放一起瞭

#coding=utf-8
from __future__ import unicode_literals
from pyecharts import Bar
from pyecharts import Page
import random
page = Page()
#dataZoom 效果,'slider' 類型
attr = ["{}天".format(i) for i in range(30)]
v1 = [random.randint(1, 30) for _ in range(30)]
bar = Bar("Bar - datazoom - slider 示例")
bar.add("", attr, v1, is_label_show=True, is_datazoom_show=True,xaxis_rotate=30, yaxis_rotate=30)
page.add(bar)

#dataZoom 效果,'inside' 類型
attr = ["{}天".format(i) for i in range(30)]
v1 = [random.randint(1, 30) for _ in range(30)]
bar2 = Bar("Bar - datazoom - inside 示例")
bar2.add(
    "",
    attr,
    v1,
    is_datazoom_show=True,
    datazoom_type="inside",
    datazoom_range=[1, 50],
)
page.add(bar2)
#dataZoom 效果,'both' 類型
attr = ["{}天".format(i) for i in range(30)]
v1 = [random.randint(1, 30) for _ in range(30)]
bar3 = Bar("Bar - datazoom - both 示例")
bar3.add(
    "",
    attr,
    v1,
    is_datazoom_show=True,
    datazoom_type="both",
    datazoom_range=[1, 40],
    label_color=["#749f83"]
)
page.add(bar3)
days = ["{}天".format(i) for i in range(30)]
days_v1 = [random.randint(1, 30) for _ in range(30)]
bar4 = Bar("Bar - datazoom - xaxis/yaxis 示例")
bar4.add(
    "",
    days,
    days_v1,
    # 默認為 X 軸,橫向
    is_datazoom_show=True,
    datazoom_type="slider",
    datazoom_range=[1, 50],
    # 新增額外的 dataZoom 控制條,縱向
    is_datazoom_extra_show=True,
    datazoom_extra_type="slider",
    datazoom_extra_range=[1, 50],
    is_toolbox_show=False,
)
page.add(bar4)
page.render(r'C:\Users\ASUS\Desktop\重新開始\Python用pyecharts繪圖\柱狀圖1.html')

到此這篇關於Python pyecharts繪制柱狀圖的文章就介紹到這瞭,更多相關繪制柱狀圖內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

本文摘抄至https://05x-docs.pyecharts.org/#/zh-cn/charts_base?id=bar%ef%bc%88%e6%9f%b1%e7%8a%b6%e5%9b%be%e6%9d%a1%e5%bd%a2%e5%9b%be%ef%bc%89

推薦閱讀: