最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python利用pandas和matplotlib實(shí)現(xiàn)繪制堆疊柱狀圖

 更新時(shí)間:2023年11月14日 08:48:37   作者:懸崖上的金魚(yú)  
在數(shù)據(jù)可視化中,堆疊柱狀圖是一種常用的圖表類(lèi)型,它能夠清晰地展示多個(gè)類(lèi)別的數(shù)據(jù),本文將演示如何使用 Python 的 pandas 和 matplotlib 庫(kù)繪制優(yōu)化的堆疊柱狀圖,需要的可以參考下

在數(shù)據(jù)可視化中,堆疊柱狀圖是一種常用的圖表類(lèi)型,它能夠清晰地展示多個(gè)類(lèi)別的數(shù)據(jù),并突出顯示每個(gè)類(lèi)別中各部分的總量和組成比例。本文將演示如何使用 Python 的 pandas 和 matplotlib 庫(kù)繪制優(yōu)化的堆疊柱狀圖,并展示了銷(xiāo)售數(shù)量隨店鋪名稱(chēng)變化的情況。

導(dǎo)入必要的庫(kù)

首先,我們需要導(dǎo)入 pandas 和 matplotlib.pyplot 庫(kù),并指定中文字體為黑體,代碼如下:

import pandas as pd
import matplotlib.pyplot as plt

plt.rcParams['font.family'] = ['SimHei']  # 指定中文字體為黑體

讀取數(shù)據(jù)

接下來(lái),我們使用 pandas 的 read_excel 函數(shù)讀取 Excel 文件中的數(shù)據(jù),并指定讀取的工作表名稱(chēng)為“Sheet3”,如下所示:

df = pd.read_excel(r'C:\Users\liuchunlin2\Desktop\新建文件夾\新建 XLSX 工作表.xlsx', sheet_name='Sheet3')

設(shè)置圖形參數(shù)

在繪制堆疊柱狀圖之前,我們需要設(shè)置柱狀圖的寬度和 x 軸的位置,代碼如下:

bar_width = 0.35  # 設(shè)置柱狀圖的寬度
x = df.index  # 設(shè)置x軸的位置

繪制堆疊柱狀圖

使用 matplotlib 庫(kù)的 subplots 函數(shù)創(chuàng)建圖形對(duì)象,并使用 bar 函數(shù)繪制堆疊柱狀圖,具體代碼如下:

fig, ax = plt.subplots()
rects1 = ax.bar(x, df['銷(xiāo)售數(shù)量'], bar_width, label='銷(xiāo)售數(shù)量')
rects2 = ax.bar(x, df['銷(xiāo)售數(shù)量2'], bar_width, bottom=df['銷(xiāo)售數(shù)量'], label='銷(xiāo)售數(shù)量2')

添加標(biāo)簽和標(biāo)題

我們?yōu)閳D形添加軸標(biāo)簽、標(biāo)題、刻度和圖例,使其更具可讀性,具體代碼如下:

ax.set_xlabel('店鋪名稱(chēng)')
ax.set_ylabel('銷(xiāo)售數(shù)量')
ax.set_title('Stacked Bar Chart')
ax.set_xticks(x)
ax.set_xticklabels(df['店鋪名稱(chēng)'])
ax.legend()

顯示數(shù)據(jù)標(biāo)簽

最后,我們使用 annotate 函數(shù)在每個(gè)柱子上方顯示數(shù)據(jù)標(biāo)簽,以展示具體的銷(xiāo)售數(shù)量,具體代碼如下:

for rect in rects1:
    height = rect.get_height()
    ax.annotate(f'{height}', xy=(rect.get_x() + rect.get_width() / 2, height), xytext=(0, 3),
                textcoords='offset points', ha='center', va='bottom')

for rect1, rect2 in zip(rects1, rects2):
    height1 = rect1.get_height()
    height2 = rect2.get_height()
    total_height = height1 + height2
    ax.annotate(f'{height2}', xy=(rect2.get_x() + rect2.get_width() / 2, total_height), xytext=(0, 3),
                textcoords='offset points', ha='center', va='bottom')

顯示圖形

最后,使用 plt.show() 函數(shù)顯示繪制好的堆疊柱狀圖,代碼如下:

plt.show()

通過(guò)以上步驟,我們成功繪制出了堆疊柱狀圖,展示了不同店鋪的銷(xiāo)售數(shù)量情況。

圖表效果圖展示

完整代碼

import pandas as pd
import matplotlib.pyplot as plt

plt.rcParams['font.family'] = ['SimHei']  # 指定中文字體為黑體
# 讀取Excel文件
df = pd.read_excel(r'C:\Users\liuchunlin2\Desktop\新建文件夾\新建 XLSX 工作表.xlsx', sheet_name='Sheet3')
# 設(shè)置柱狀圖的寬度
bar_width = 0.35
# 設(shè)置x軸的位置
x = df.index

# 繪制堆疊柱狀圖
fig, ax = plt.subplots()
rects1 = ax.bar(x, df['銷(xiāo)售數(shù)量'], bar_width, label='銷(xiāo)售數(shù)量')
rects2 = ax.bar(x, df['銷(xiāo)售數(shù)量2'], bar_width, bottom=df['銷(xiāo)售數(shù)量'], label='銷(xiāo)售數(shù)量2')

# 添加標(biāo)簽和標(biāo)題
ax.set_xlabel('店鋪名稱(chēng)')
ax.set_ylabel('銷(xiāo)售數(shù)量')
ax.set_title('Stacked Bar Chart')
ax.set_xticks(x)
ax.set_xticklabels(df['店鋪名稱(chēng)'])
ax.legend()

# 在每個(gè)柱子上方顯示數(shù)據(jù)標(biāo)簽
for rect in rects1:
    height = rect.get_height()
    ax.annotate(f'{height}', xy=(rect.get_x() + rect.get_width() / 2, height), xytext=(0, 3),
                textcoords='offset points', ha='center', va='bottom')

for rect1, rect2 in zip(rects1, rects2):
    height1 = rect1.get_height()
    height2 = rect2.get_height()
    total_height = height1 + height2
    ax.annotate(f'{height2}', xy=(rect2.get_x() + rect2.get_width() / 2, total_height), xytext=(0, 3),
                textcoords='offset points', ha='center', va='bottom')

# 顯示圖形
plt.show()

到此這篇關(guān)于Python利用pandas和matplotlib實(shí)現(xiàn)繪制堆疊柱狀圖的文章就介紹到這了,更多相關(guān)Python堆疊柱狀圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python讀取CSV文件并進(jìn)行數(shù)據(jù)可視化

    Python讀取CSV文件并進(jìn)行數(shù)據(jù)可視化

    這篇文章主要為大家詳細(xì)介紹了Python如何讀取CSV文件并進(jìn)行數(shù)據(jù)可視化,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-12-12
  • 通過(guò)案例解析python鴨子類(lèi)型相關(guān)原理

    通過(guò)案例解析python鴨子類(lèi)型相關(guān)原理

    這篇文章主要介紹了通過(guò)案例解析python鴨子類(lèi)型相關(guān)原理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Python中操作MySQL入門(mén)實(shí)例

    Python中操作MySQL入門(mén)實(shí)例

    這篇文章主要介紹了Python中操作MySQL入門(mén)實(shí)例,本文講解了安裝、打開(kāi)數(shù)據(jù)庫(kù)連接、插入數(shù)據(jù)、查詢(xún)數(shù)據(jù)、刪除數(shù)據(jù)等操作,需要的朋友可以參考下
    2015-02-02
  • Python數(shù)據(jù)報(bào)表之Excel操作模塊用法分析

    Python數(shù)據(jù)報(bào)表之Excel操作模塊用法分析

    這篇文章主要介紹了Python數(shù)據(jù)報(bào)表之Excel操作模塊用法,結(jié)合實(shí)例形式分析了XlsxWriter模塊的功能及簡(jiǎn)單使用方法,需要的朋友可以參考下
    2019-03-03
  • Python使用Pickle模塊進(jìn)行數(shù)據(jù)保存和讀取的講解

    Python使用Pickle模塊進(jìn)行數(shù)據(jù)保存和讀取的講解

    今天小編就為大家分享一篇關(guān)于Python使用Pickle模塊進(jìn)行數(shù)據(jù)保存和讀取的講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-04-04
  • python實(shí)現(xiàn)圖片九宮格分割的示例

    python實(shí)現(xiàn)圖片九宮格分割的示例

    這篇文章主要介紹了python實(shí)現(xiàn)圖片九宮格分割的示例,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下
    2021-04-04
  • python文件讀取失敗怎么處理

    python文件讀取失敗怎么處理

    在本篇文章里小編給大家分享的是關(guān)于python文件讀取失敗怎么處理的相關(guān)文章,需要的朋友們參考下。
    2020-06-06
  • 完美解決pycharm 不顯示代碼提示問(wèn)題

    完美解決pycharm 不顯示代碼提示問(wèn)題

    這篇文章主要介紹了完美解決pycharm 不顯示代碼提示問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • 深入探討Pandas數(shù)據(jù)清洗與高效分析

    深入探討Pandas數(shù)據(jù)清洗與高效分析

    這篇文章主要介紹了深入探討Pandas數(shù)據(jù)清洗與高效分析,Pandas 是 Python 中最強(qiáng)大的數(shù)據(jù)處理庫(kù)之一,廣泛應(yīng)用于數(shù)據(jù)分析、統(tǒng)計(jì)建模和科學(xué)計(jì)算領(lǐng)域,本文將深入探討 Pandas 的高階用法,包括數(shù)據(jù)清洗、高效的數(shù)據(jù)操作以及與機(jī)器學(xué)習(xí)結(jié)合的應(yīng)用
    2021-10-10
  • Python實(shí)現(xiàn)全自動(dòng)文件整理的操作教程

    Python實(shí)現(xiàn)全自動(dòng)文件整理的操作教程

    你是否常常感到桌面文件太亂,各類(lèi)文檔、圖片、視頻混雜一團(tuán),找個(gè)文件如大海撈針,桌面圖標(biāo)密密麻麻,各種新建文件夾(1)、圖片001、合同終版(最終).pdf堆積如山,今天,我就將手把手教你如何利用Python實(shí)現(xiàn)全自動(dòng)文件整理,需要的朋友可以參考下
    2025-11-11

最新評(píng)論

河西区| 南宁市| 长沙市| 长治市| 上饶县| 贡觉县| 大关县| 广西| 大石桥市| 南汇区| 阳信县| 砀山县| 汽车| 报价| 水富县| 马鞍山市| 木兰县| 静海县| 新田县| 凌云县| 襄垣县| 施秉县| 浮梁县| 乡城县| 新巴尔虎右旗| 莲花县| 山丹县| 平陆县| 和平县| 千阳县| 吴桥县| 孝感市| 大渡口区| 察哈| 札达县| 明溪县| 安丘市| 嵩明县| 吉木乃县| 建德市| 舞钢市|