您好,登錄后才能下訂單哦!
這篇文章主要介紹Python如何繪制堆疊柱狀圖,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
1.什么是堆疊柱狀圖
與并排顯示分類的分組柱狀圖不同,堆疊柱狀圖將每個柱子進行分割以顯示相同類型下各個數據的大小情況。它可以形象的展示一個大分類包含的每個小分類的數據,以及各個小分類的占比,顯示的是單個項目與整體之間的關系。效果圖如下:
2.數據展示
這里展示了部分數據,主要是treatment就是對應的上圖分類一,分類二;species就是對應的分組;ra就是對應的各個分組的比例。
3.Python代碼
from matplotlib import pyplot as plt import pandas as pd import xlrd import numpy as np data = xlrd.open_workbook('ccc.xlsx') #打開數據 table = data.sheet_by_index(0) #獲取sheet1的數據 nrows = table.nrows #獲取sheet1中的行 plot_list = ['plot1'] plot1_ra_list = [[0] for i in range(17)]#構建一個17X1的列表 i = 0 for row in range(1,nrows): #循環讀取表內數據 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數量,可以認為的添加,并補充對應的ra為0,這樣子也不影響整個做圖。下面我PO一張demo。
python的數據類型:1. 數字類型,包括int(整型)、long(長整型)和float(浮點型)。2.字符串,分別是str類型和unicode類型。3.布爾型,Python布爾類型也是用于邏輯運算,有兩個值:True(真)和False(假)。4.列表,列表是Python中使用最頻繁的數據類型,集合中可以放任何數據類型。5. 元組,元組用”()”標識,內部元素用逗號隔開。6. 字典,字典是一種鍵值對的集合。7. 集合,集合是一個無序的、不重復的數據組合。
以上是“Python如何繪制堆疊柱狀圖”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。