直方圖是數(shù)值數(shù)據(jù)分布的精確表示。它是連續(xù)變量的概率分布的估計,它是一種條形圖。要構(gòu)建直方圖,請按照以下步驟操作 -
Bin值范圍。 將整個值范圍劃分為一系列間隔。 計算每個間隔中有多少值。
bins通常指定為變量的連續(xù),非重疊區(qū)間。matplotlib.pyplot.hist()函數(shù)繪制直方圖。它計算并繪制x的直方圖。
參數(shù)
下表列出了直方圖的參數(shù) -
x - 數(shù)組或數(shù)組序列。 bins - 整數(shù)或序列或auto,可選項。 range - bins的下部和上部范圍。 density - 如果為True,則返回元組的第一個元素將是規(guī)范化以形成概率密度的計數(shù)。 cumulative - 如果為True,則計算直方圖,其中每個bin給出該bin中的計數(shù)加上較小值的所有bin。 histtype - 要繪制的直方圖的類型,默認為bar。
下面的實例描繪了一個班級學(xué)生獲得的標(biāo)記直方圖。定義了四個bins,0-25,26-50,51-75和76-100。直方圖顯示了落在此范圍內(nèi)的學(xué)生人數(shù)。
示例代碼:
# Filename : example.py # Copyright : 2020 By Nhooo # Author by : www.soo66.com # Date : 2020-08-08 #! /usr/bin/env python #coding=utf-8 import matplotlib.pyplot as plt import numpy as np import math plt.rcParams['font.sans-serif'] = ['SimHei'] # 步驟一(替換sans-serif字體) plt.rcParams['axes.unicode_minus'] = False # 原文出自【立地貨】,商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)請保留原文鏈接: fig,ax = plt.subplots(1,1) a = np.array([22,87,5,43,56,73,55,54,11,20,51,5,79,31,27]) ax.hist(a, bins = [0,25,50,75,100]) ax.set_title("結(jié)果直方圖") ax.set_xticks([0,25,50,75,100]) ax.set_xlabel('分數(shù)') ax.set_ylabel('學(xué)生數(shù)量') plt.show()
執(zhí)行上面示例代碼,得到以下結(jié)果 -