創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
員工經(jīng)過長期磨合與沉淀,具備了協(xié)作精神,得以通過團(tuán)隊(duì)的力量開發(fā)出優(yōu)質(zhì)的產(chǎn)品。創(chuàng)新互聯(lián)堅(jiān)持“專注、創(chuàng)新、易用”的產(chǎn)品理念,因?yàn)椤皩W⑺詫I(yè)、創(chuàng)新互聯(lián)網(wǎng)站所以易用所以簡單”。公司專注于為企業(yè)提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司、微信公眾號開發(fā)、電商網(wǎng)站開發(fā),重慶小程序開發(fā),軟件定制設(shè)計(jì)等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。這篇文章將為大家詳細(xì)講解有關(guān)python畫直方圖的方法,小編覺得挺實(shí)用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
matplotlib.pyplot直方圖畫起來還是非常方便的,思路還是準(zhǔn)備好數(shù)據(jù),然后設(shè)置參數(shù)即可。
直方圖(Histogram)又稱質(zhì)量分布圖。是一種統(tǒng)計(jì)報告圖,由一系列高度不等的縱向條紋或線段表示數(shù)據(jù)分布的情況。 一般用橫軸表示數(shù)據(jù)類型,縱軸表示分布情況。
直方圖是數(shù)值數(shù)據(jù)分布的精確圖形表示。 這是一個連續(xù)變量(定量變量)的概率分布的估計(jì),并且被卡爾·皮爾遜(Karl Pearson)首先引入。它是一種條形圖。 為了構(gòu)建直方圖,第一步是將值的范圍分段,即將整個值的范圍分成一系列間隔,然后計(jì)算每個間隔中有多少值。 這些值通常被指定為連續(xù)的,不重疊的變量間隔。 間隔必須相鄰,并且通常是(但不是必須的)相等的大小。
直方圖是調(diào)用的matplotlib.pyplot.hist模塊
matplotlib.pyplot.hist的參數(shù):
matplotlib.pyplot.hist(x,bins = None,range = None,density = None,weights = None,cumulative = False,bottom = None, histtype =’bar’,align =’mid’,orientation =’vertical’,rwidth = None,log = False,color = None,label = None, stacked = False,normed = None,hold = None,data = None,** kwargs )
hist的參數(shù)詳解
x : (n,)數(shù)組或序列(n,)數(shù)組
輸入值,這需要單個數(shù)組或不需要具有相同長度的數(shù)組序列
bins : 整數(shù)或序列或’auto’可選,默認(rèn)是沒有
如果一個整數(shù),bins +1,則計(jì)算并返回bin邊緣,與之一致numpy.histogram()
range : 元組或沒有可選的,默認(rèn)是沒有
箱子的上下范圍。上下異常值將被忽略。如果沒有提供,范圍是(x.min(),x.max())。如果箱子是一個序列沒有影響范圍 如果指定箱是一個序列或范圍,自動定量是基于指定本范圍而不是x的范圍。
density :可選布爾類型
如果這是真的,返回第一個元素的元組將計(jì)數(shù)歸一化形成一個概率密度,即。,面積(或積分)根據(jù)直方圖將之和為1。這是通過將整個計(jì)算 觀測的數(shù)量乘以本寬度,而不是除以總數(shù)量的觀察。如果堆也是真的,直方圖之和是標(biāo)準(zhǔn)化為1。 默認(rèn)是沒有賦范和密度。如果設(shè)置,那么將使用這個值。如果沒有設(shè)置,那么參數(shù)將被視為錯誤的
weights:可選擇相同的數(shù)據(jù)或者沒有
數(shù)組的重量、形狀相同的x。每個值x只貢獻(xiàn)相關(guān)重量對箱數(shù)(而不是1)。如果賦范或密度是真的,權(quán)重歸一化,這樣的積分密度范圍是1。
cumulative:可選布爾類型
如果True,則計(jì)算直方圖,其中每個bin給出該bin中的計(jì)數(shù)加上較小值的所有bin。最后一個bin給出了數(shù)據(jù)點(diǎn)的總數(shù)。如果賦范或密度 也True然后直方圖歸一化,使得最后倉等于1。如果累計(jì)計(jì)算結(jié)果為小于0(例如,-1),累積的方向被反轉(zhuǎn)。在這種情況下,如果賦范 和/或密度也是True,則直方圖歸一化,使得第一倉等于1。 默認(rèn)是 False
bottom:相同數(shù)組,標(biāo)量或者沒有
每個倉的底部基線的位置。如果是標(biāo)量,則每個bin的基線移動相同的量。如果是一個數(shù)組,每個bin都是獨(dú)立移動的,底部的長度必須 與bin的數(shù)量相匹配。如果為None,則默認(rèn)為0。默認(rèn)是 None
histtype : {‘bar’,’barstacked’,’step’,’stepfilled’},可選
要繪制的直方圖的類型 ‘bar’是傳統(tǒng)的條形直方圖。如果給出多個數(shù)據(jù),則條并排排列。 ‘barstacked’是一種條形直方圖,其中多個數(shù)據(jù)堆疊在一起。 ‘step’生成一個默認(rèn)未填充的線圖。 ‘stepfilled’生成一個默認(rèn)填充的線圖。 默認(rèn)為’bar’
align : {‘left’,’mid’,’right’},可選
控制直方圖的繪制方式。 ‘left’:條形圖位于左邊框邊緣的中心。 ‘mid’:條在bin邊緣之間居中。 ‘right’:條形圖位于右側(cè)邊框的中心。 默認(rèn)為’mid’
orientation : {‘horizontal’,’vertical’},可選
如果是’horizontal’,barh將用于條形直方圖,底部 kwarg將用于左邊緣
log : 布爾值,可選
如果True,直方圖軸將設(shè)置為對數(shù)刻度。如果 log是True且x是1D數(shù)組,則將過濾掉空箱,并且僅 返回非空。(n, bins, patches). 默認(rèn)是 False
color :顏色
顏色規(guī)格或顏色規(guī)格序列,每個數(shù)據(jù)集一個。Default(None)使用標(biāo)準(zhǔn)線顏色序列.默認(rèn)是 None
實(shí)例:
import numpy as np import matplotlib.pyplot as plt np.random.seed(19680801) mu, sigma = 100, 15 x = mu + sigma * np.random.randn(10000) n, bins, patches = plt.hist(x, 50, density=True, facecolor='g', alpha=0.75) plt.xlabel('Smarts') plt.ylabel('Probability') plt.title('Histogram of IQ') plt.text(60, .025, r'$\mu=100,\ \sigma=15$') plt.axis([40, 160, 0, 0.03]) plt.grid(True) plt.show()
效果圖:
關(guān)于python畫直方圖的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。