欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python繪制堆疊柱狀圖的實例

 更新時間:2019年07月09日 09:04:43   作者:程序小學(xué)生  
今天小編就為大家分享一篇Python繪制堆疊柱狀圖的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

有個朋友要求幫忙繪制堆疊柱狀圖,查閱了一些文檔之后也算是完成了,只是一個小demo,下面我就記錄一下。

1.什么是堆疊柱狀圖

與并排顯示分類的分組柱狀圖不同,堆疊柱狀圖將每個柱子進行分割以顯示相同類型下各個數(shù)據(jù)的大小情況。它可以形象的展示一個大分類包含的每個小分類的數(shù)據(jù),以及各個小分類的占比,顯示的是單個項目與整體之間的關(guān)系。效果圖如下:

2.數(shù)據(jù)展示

這里展示了部分數(shù)據(jù),主要是treatment就是對應(yīng)的上圖分類一,分類二;species就是對應(yīng)的分組;ra就是對應(yīng)的各個分組的比例。

3.Python代碼

from matplotlib import pyplot as plt
import pandas as pd
import xlrd
import numpy as np
 
data = xlrd.open_workbook('ccc.xlsx')  #打開數(shù)據(jù)
table = data.sheet_by_index(0)     #獲取sheet1的數(shù)據(jù)
nrows = table.nrows           #獲取sheet1中的行
plot_list = ['plot1']
plot1_ra_list = [[0] for i in range(17)]#構(gòu)建一個17X1的列表
i = 0
for row in range(1,nrows):       #循環(huán)讀取表內(nèi)數(shù)據(jù)
  if table.cell(row,0).value == 2015.0 and table.cell(row,1).value == 'plot1':
    print(table.cell(row, 3).value) #第三列是各個元素所占的比例
    print(i)
    plot1_ra_list[i][0]=(float(table.cell(row, 3).value))
    i+=1
#顏色列表
color = ['y','r','snow','b','k','g','orange','c','bisque','brown','lime','aqua','coral','darkcyan','gold','teal','pink',]
plt.figure(figsize=(8,6))
for i in range(17):
  plt.bar(range(len(plot1_ra_list[i])), plot1_ra_list[i],bottom=np.sum(plot1_ra_list[:i],axis = 0),label=str(i+1),tick_label = plot_list,fc = color[i])
plt.legend()
plt.show()

4.效果展示

上述代碼我只做了2015年的plot1,如果要把plot2增加上注意要對齊plot1和plot2的species數(shù)量,可以認為的添加,并補充對應(yīng)的ra為0,這樣子也不影響整個做圖。下面我PO一張demo。

以上這篇Python繪制堆疊柱狀圖的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python利用py-redis實現(xiàn)分布式鎖

    Python利用py-redis實現(xiàn)分布式鎖

    隨著業(yè)務(wù)的增長,后端技術(shù)架構(gòu)會慢慢的從單體服務(wù)轉(zhuǎn)向多服務(wù)或者微服務(wù)的分布式架構(gòu),本文主要為大家介紹了如何利用Py-Redis實現(xiàn)簡單的分布式鎖,需要的可以參考一下
    2023-08-08
  • python機器學(xué)習(xí)之決策樹分類詳解

    python機器學(xué)習(xí)之決策樹分類詳解

    這篇文章主要介紹了python機器學(xué)習(xí)之決策樹分類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • 在?Python?中利用Pool?進行多處理

    在?Python?中利用Pool?進行多處理

    這篇文章主要介紹了在?Python?中利用Pool進行多處理,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值需要的小伙伴可以參考一下
    2022-04-04
  • Python Matplotlib庫入門指南

    Python Matplotlib庫入門指南

    這篇文章主要介紹了Python Matplotlib庫入門指南,本文講解了Matplotlib是什么,然后給出了Matplotlib基礎(chǔ)繪圖實例如繪制折線圖、繪制多線圖,并給出了圖例功能使用實例,需要的朋友可以參考下
    2015-05-05
  • python制作一個桌面便簽軟件

    python制作一個桌面便簽軟件

    這篇文章主要介紹了python制作一個桌面便簽軟件分別給大家附上ubuntu和windows版的程序及源碼,有需要的小伙伴可以參考下。
    2015-08-08
  • Python中dtype、type()和astype()的區(qū)別詳解

    Python中dtype、type()和astype()的區(qū)別詳解

    這篇文章主要介紹了Python中dtype、type()和astype()的區(qū)別詳解,type()是python內(nèi)置的函數(shù),type()返回數(shù)據(jù)結(jié)構(gòu)類型(list、dict、numpy.ndarray 等),需要的朋友可以參考下
    2023-08-08
  • python的XIsxWriter操作Excel示例詳解

    python的XIsxWriter操作Excel示例詳解

    這篇文章主要介紹了python的XIsxWriter操作Excel示例詳解,xlsxwriter是一個專門用于創(chuàng)建、寫入和操作Excel文件的Python模塊,它提供了豐富的功能和選項,能夠創(chuàng)建復(fù)雜的Excel文檔,需要的朋友可以參考下
    2023-09-09
  • Python中print()函數(shù)使用實例詳解

    Python中print()函數(shù)使用實例詳解

    Python的print()函數(shù)可以打印輸出,常用來將內(nèi)容打印到控制臺,print()是python中最常見的一個函數(shù),本文就通過一些實例來給大家講講如何使用print()函數(shù),需要的朋友可以參考下
    2023-07-07
  • Python實現(xiàn)元素等待代碼實例

    Python實現(xiàn)元素等待代碼實例

    這篇文章主要介紹了python實現(xiàn)元素等待代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • TensorFlow和Numpy矩陣操作中axis理解及axis=-1的解釋

    TensorFlow和Numpy矩陣操作中axis理解及axis=-1的解釋

    在調(diào)用numpy庫中的concatenate()時,有遇到axis=-1/1/0的情況,下面這篇文章主要給大家介紹了關(guān)于TensorFlow和Numpy矩陣操作中axis理解及axis=-1解釋的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-03-03

最新評論