av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python 畫條形圖(柱狀圖)實例

瀏覽:66日期:2022-07-29 09:57:18

條形圖(bar chart),也稱為柱狀圖,是一種以長方形的長度為變量的統計圖表,長方形的長度與它所對應的變量數值呈一定比例。

1. 豎放條形圖

畫條形圖要用到 pyplot 中的 bar 函數,該函數的基本語法為:

bar(x, height, [width], **kwargs)

x 數組,每個條形的橫坐標 height 個數或一個數組,條形的高度 [width] 可選參數,一個數或一個數組,條形的寬度,默認為 0.8 **kwargs 不定長的關鍵字參數,用字典形式設置條形圖的其他屬性

**kwargs 中常設置的參數包括圖形標簽 label,顏色標簽 color,不透明度 alpha 等。

假設某項針對男女大學生購買飲用水愛好的調查結果如下表:

男 女 碳酸飲料 6 9 綠茶 7 4 礦泉水 6 4 其他 2 6 果汁 1 5 總計 22 28

畫出男生飲用水情況的直方圖,代碼如下:

import matplotlib.pyplot as plt# 這兩行代碼解決 plt 中文顯示的問題plt.rcParams[’font.sans-serif’] = [’SimHei’]plt.rcParams[’axes.unicode_minus’] = Falsewaters = (’碳酸飲料’, ’綠茶’, ’礦泉水’, ’果汁’, ’其他’)buy_number = [6, 7, 6, 1, 2]plt.bar(waters, buy_number)plt.title(’男性購買飲用水情況的調查結果’)plt.show()

圖形:

python 畫條形圖(柱狀圖)實例

2. 橫放條形圖

若要生成橫的條形圖,則可以使用 barh 函數,其語法與 bar 函數非常類似。

bar(x, width, [height], **kwargs)

y 數組,每個條形的縱坐標 width 一個數或一個數組,條形的寬度 [height] 可選參數,一個數或一個數組,條形的高度,默認為 0.8 **kwargs 不定長的關鍵字參數,用字典形式設置條形圖的其他屬性

代碼:

import matplotlib.pyplot as plt# 這兩行代碼解決 plt 中文顯示的問題plt.rcParams[’font.sans-serif’] = [’SimHei’]plt.rcParams[’axes.unicode_minus’] = Falsewaters = (’碳酸飲料’, ’綠茶’, ’礦泉水’, ’果汁’, ’其他’)buy_number = [6, 7, 6, 1, 2]plt.barh(waters, buy_number) # 橫放條形圖函數 barhplt.title(’男性購買飲用水情況的調查結果’)plt.show()

python 畫條形圖(柱狀圖)實例

3. 并列條形圖

若要將男生與女生的調查情況畫出兩個條形圖一塊顯示,則可以使用 bar 或 barh 函數兩次,并調整 bar 或 barh 函數的條形圖位置坐標以及相應刻度,使得兩組條形圖能夠并排顯示。

import matplotlib.pyplot as pltimport numpy as np# 這兩行代碼解決 plt 中文顯示的問題plt.rcParams[’font.sans-serif’] = [’SimHei’]plt.rcParams[’axes.unicode_minus’] = False# 輸入統計數據waters = (’碳酸飲料’, ’綠茶’, ’礦泉水’, ’果汁’, ’其他’)buy_number_male = [6, 7, 6, 1, 2]buy_number_female = [9, 4, 4, 5, 6]bar_width = 0.3 # 條形寬度index_male = np.arange(len(waters)) # 男生條形圖的橫坐標index_female = index_male + bar_width # 女生條形圖的橫坐標# 使用兩次 bar 函數畫出兩組條形圖plt.bar(index_male, height=buy_number_male, width=bar_width, color=’b’, label=’男性’)plt.bar(index_female, height=buy_number_female, width=bar_width, color=’g’, label=’女性’)plt.legend() # 顯示圖例plt.xticks(index_male + bar_width/2, waters) # 讓橫坐標軸刻度顯示 waters 里的飲用水, index_male + bar_width/2 為橫坐標軸刻度的位置plt.ylabel(’購買量’) # 縱坐標軸標題plt.title(’購買飲用水情況的調查結果’) # 圖形標題plt.show()

python 畫條形圖(柱狀圖)實例

補充知識:Python 條形圖與直方圖有非常大的區別

區別:

首先,條形圖是用條形的長度表示各類別頻數的多少,其寬度(表示類別)則是固定的;

直方圖是用面積表示各組頻數的多少,矩形的高度表示每一組的頻數或頻率,寬度則表示各組的組距,因此其高度與寬度均有意義。

其次,由于分組數據具有連續性,直方圖的各矩形通常是連續排列,而條形圖則是分開排列。

最后,條形圖主要用于展示分類數據,而直方圖則主要用于展示數據型數據,我們初中學的就是條形統計圖,很顯然有沒有當初那種感覺?(身高-年齡 條形統計圖)在坐標上畫出每個年齡對應的頻數。這就是我們研究數據分布最喜歡用的。如果還是有點蒙,下面相同數據對比一下這兩種圖像你就會明白!

數據:

年齡 0 1 2 3 4 5 6 7 8 9 10 總數 人數 3 6 7 11 13 18 15 11 7 5 4 100

條形統計圖(注重每類多少個):import matplotlib.pyplot as pltimport numpy as npimport pandas as pdplt.rcParams[’font.sans-serif’]=[’SimHei’] #正常顯示中文plt.rcParams[’axes.unicode_minus’]=False #正常顯示負號 # d=pd.read_excel(’E:Pythonprojectsdatadata100.xlsx’,header=None)# d=d[0]# d=list(d) ages=range(11)count=[3,6,7,11,13,18,15,11,7,5,4]plt.bar(ages,count, label=’graph 1’)# params# x: 條形圖x軸# y:條形圖的高度# width:條形圖的寬度 默認是0.8# bottom:條形底部的y坐標值 默認是0# align:center / edge 條形圖是否以x軸坐標為中心點或者是以x軸坐標為邊緣plt.legend()plt.xlabel(’ages’)plt.ylabel(’count’)plt.title(u’測試例子——條形圖’) for i in range(11): plt.text(i,count[i]+0.1,'%s'%count[i],va=’center’) plt.show()

python 畫條形圖(柱狀圖)實例

直方圖:

import matplotlib.pyplot as pltimport matplotlib.mlab as mlabimport numpy as npimport pandas as pdplt.rcParams[’font.sans-serif’]=[’SimHei’] #正常顯示中文plt.rcParams[’axes.unicode_minus’]=False #正常顯示負號# d=np.random.normal(0,1,100)d=pd.read_excel(’E:Pythonprojectsdatadata100.xlsx’,header=None)d=d[0]d=list(d)print(d)n, bins, patches = plt.hist(x=d, bins=11, color=’#0504aa’,alpha=0.8, rwidth=0.6) #alpha 是顏色深度 rwidth 條形寬度,bins條形箱的數目 plt.grid(axis=’y’, alpha=0.4) #alpha 網格顏色深度plt.xlabel(’age’)plt.ylabel(’count’)plt.title(’100個樣本分布如下’)plt.text(20, 40, r’$mu=0, sigma=1$’)#前面是坐標,寫字# plt.ylim(19) #設置y的范圍 plt.show()

python 畫條形圖(柱狀圖)實例

對比兩個圖就能知道,條形圖將類別對的死死的,但是直方圖就用間隔來劃分每一柱多少,雖然大體相差不大,但是對于數據研究那影響可大也可小。總之了解了區別才能避免不必要的犯錯。

以上這篇python 畫條形圖(柱狀圖)實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 亚洲一区二区在线电影 | 亚州精品天堂中文字幕 | 一级做a| 桃花av在线 | 激情av免费看| 欧美日韩在线观看一区 | 国产一级毛片视频 | 国产精品久久久久久久久免费相片 | 午夜av免费 | 国产精品免费在线 | 国产精品日韩欧美一区二区 | 中文字幕成人免费视频 | 懂色中文一区二区三区在线视频 | 美国黄色毛片 | 亚洲日本成人 | 久久久久久久国产精品影院 | 国产精品1区2区3区 一区中文字幕 | 日韩精品久久久久 | 九热在线 | 日韩欧美专区 | 午夜影院在线观看 | 狠狠躁夜夜躁人人爽天天高潮 | 国产亚洲成av人片在线观看桃 | 国产一区二区视频在线 | 美女张开腿露出尿口 | 久久99深爱久久99精品 | 亚洲自拍偷拍视频 | 欧美一级欧美三级在线观看 | 91看片免费 | 男女免费视频网站 | 黄网站在线播放 | 亚洲欧美一区二区三区国产精品 | 国产精品国产精品国产专区不卡 | 91在线看视频 | 免费能直接在线观看黄的视频 | 日韩欧美中文在线 | 亚洲最大看片网站 | 视频一区欧美 | 夜夜草| 久久精品无码一区二区三区 | 深夜爽视频|