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

Python利用 matplotlib 繪制直方圖

 更新時(shí)間:2021年12月01日 10:41:37   作者:盆友圈的小可愛  
這篇文章主要介紹了Python利用 matplotlib 模塊繪制直方圖相關(guān)屬性和方法,具有一定的參考價(jià)值,需要的朋友可以參考一下

復(fù)習(xí)回顧:

經(jīng)過前面對 matplotlib 模塊從底層架構(gòu)、基本繪制步驟等學(xué)習(xí),我們已經(jīng)學(xué)習(xí)了折線圖、柱狀圖的繪制方法。

matplotlib 模塊基礎(chǔ):對matplotlib 模塊常用方法進(jìn)行學(xué)習(xí)

matplotlib 模塊底層原理:學(xué)習(xí)matplotlib 模塊腳本層、美工層及后端層

matplotlib 繪制折線圖:總結(jié)折線圖相關(guān)屬性和方法

matplotlib 繪制柱狀圖:總結(jié)柱狀圖相關(guān)屬性和方法

在分析數(shù)據(jù)的時(shí)候,我們會根據(jù)數(shù)據(jù)的特點(diǎn)來選擇對應(yīng)圖表來展示,需要表示質(zhì)量這一概念,需要用直方圖。

1. 直方圖概述

1.1什么是直方圖?

  • 直方圖是一種可視化表示數(shù)據(jù)在連續(xù)間隔或者特定時(shí)間段內(nèi)容的分布情況
  • 直方圖又稱為質(zhì)量分布圖,屬于條行圖的一種
  • 直方圖x軸表示數(shù)據(jù)類型,縱軸表示分布情況,每個(gè)數(shù)據(jù)寬度可以任意變化

1.2直方圖使用場景

  • 直方圖用于概率分布,展示一組數(shù)據(jù)在指定范圍內(nèi)的出現(xiàn)概率
  • 可以用于展示數(shù)據(jù)分布頻率情況
  • 用于眾數(shù)、中位數(shù)的位置
  • 關(guān)注數(shù)據(jù)存在缺口或者異常值

1.3直方圖繪制步驟

  • 導(dǎo)入matplotlib.pyplot模塊
  • 準(zhǔn)備數(shù)據(jù),可以使用numpy/pandas整理數(shù)據(jù)
  • 調(diào)用pyplot.hist()繪制直方圖

1.4案例展示

本次案例我們來分析公司員工的身高分布情況

案例數(shù)據(jù)準(zhǔn)備,使用numpy隨機(jī)生成200個(gè)升高數(shù)據(jù)

import numpy as np

x_value = np.random.randint(140,180,200)

繪制直方圖:

import matplotlib.pyplot as plt

plt.hist(x_value,bins=10)

plt.title("data analyze")
plt.xlabel("height")
plt.ylabel("rate")

plt.show()

2. 直方圖屬性

2.1設(shè)置顏色

  • 設(shè)置長條形顏色關(guān)鍵字:facecolor
  • 設(shè)置邊框的顏色關(guān)鍵字:edgecolor

顏色選擇值:

  • 使用顏色的英語單詞如紅色"red",黃色"yellow"
  • 使用顏色簡稱:紅色"r",藍(lán)色"b"
  • 使用rgb:格式(r,g,b),取值范圍:0~1

2.2設(shè)置長條形數(shù)目

  • 關(guān)鍵字:bins
  • 可選項(xiàng),默認(rèn)為10

2.3設(shè)置透明度

  • 關(guān)鍵字:alpha
  • 默認(rèn)為0,取值范圍為0~1

2.4設(shè)置樣式

  • 關(guān)鍵字:histtype
  • 取值說

屬性值 說明
'bar' 柱狀形數(shù)據(jù)并排,默認(rèn)值
'barstacked' 柱狀形數(shù)據(jù)重疊并排
'step' 柱狀形顏色不填充
'stepfilled' 填充的線性

我們對第一節(jié)直方圖添加柱狀形不填充,邊框顏色為紅色

plt.hist(x_value,bins=10,edgecolor="r",histtype="step")


邊框設(shè)置為紅色,透明度為0.5

plt.hist(x_value,bins=10,edgecolor="r",histtype="bar",alpha=0.5)


3. 添加折線直方圖

在直方圖中,我們也可以加一個(gè)折線圖,輔助我們查看數(shù)據(jù)變化情況

  • 首先通過pyplot.subplot()創(chuàng)建Axes對象
  • 通過Axes對象調(diào)用hist()方法繪制直方圖,返回折線圖所需要的下x,y數(shù)據(jù)
  • 然后Axes對象調(diào)用plot()繪制折線圖
  • 我們對第一節(jié)代碼進(jìn)行改造一下
fig,ax = plt.subplots()

n,bins_num,pat = ax.hist(x_value,bins=10,alpha=0.75)

ax.plot(bins_num[:10],n,marker = 'o',color="yellowgreen",linestyle="--")

4. 堆疊直方圖

我們有時(shí)候會對吧同樣數(shù)據(jù)范圍情況下,對比兩組不同對象群體收集的數(shù)據(jù)差異

準(zhǔn)備兩組數(shù)據(jù):

import numpy as np

x_value = np.random.randint(140,180,200)
x2_value = np.random.randint(140,180,200)
  • 直方圖屬性data:以列表的形式傳入兩組數(shù)據(jù)
  • 設(shè)置直方圖stacked:為True,允許數(shù)據(jù)覆蓋
plt.hist([x_value,x2_value],bins=10,stacked=True)


5. 不等距直方圖

我們上述繪制的直方圖都是等距的,我們可以指定一組數(shù)據(jù)傳入bins屬性

  • bins 關(guān)鍵字:指定直方圖的柱狀形個(gè)數(shù)
  • 更改上述的代碼后,看看效果吧
bin_num = [140,155,160,170,175,180]
plt.hist([x_value,x2_value],bins=bin_num,alpha=0.75,stacked=True)


6. 多類直方圖

我們在使用直方圖查查看數(shù)據(jù)的頻率時(shí),有時(shí)候會查看多種類型數(shù)據(jù)出現(xiàn)的頻率。

這時(shí)候我們可以以列表的形式傳入多種數(shù)據(jù)給hist()方法的x數(shù)據(jù)

x_value = [np.random.randint(140,180,i) for i in [100,200,300]]

plt.hist(x_value,bins=10,edgecolor="r",histtype="bar",alpha=0.5,label=["A公司","B公司","C公司"])

總結(jié):
我們對matplotlib模塊中詳細(xì)學(xué)習(xí)繪制各種直方圖標(biāo)相關(guān)屬性和方法。在需要查看數(shù)據(jù)分布頻率時(shí),我們可以使用hist()方法繪制直方圖,同時(shí)也可以添加折線來輔助查看

到此這篇關(guān)于Python利用 matplotlib 繪制直方圖的文章就介紹到這了,更多相關(guān)Python matplotlib 模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于python實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)

    基于python實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了基于python學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • Pytorch建模過程中的DataLoader與Dataset示例詳解

    Pytorch建模過程中的DataLoader與Dataset示例詳解

    這篇文章主要介紹了Pytorch建模過程中的DataLoader與Dataset,同時(shí)PyTorch針對不同的專業(yè)領(lǐng)域,也提供有不同的模塊,例如?TorchText,?TorchVision,?TorchAudio,這些模塊中也都包含一些真實(shí)數(shù)據(jù)集示例,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2023-01-01
  • Python中?*?號的用法總結(jié)

    Python中?*?號的用法總結(jié)

    Python中的?*號是一個(gè)特殊的符號,在其他編程語言中,它最廣為人知的用途就是作為乘法運(yùn)算的符號,本文總結(jié)了Python中*號的所有用途,希望對大家有所幫助
    2023-11-11
  • 詳解?PyTorch?Lightning模型部署到生產(chǎn)服務(wù)中

    詳解?PyTorch?Lightning模型部署到生產(chǎn)服務(wù)中

    這篇文章主要為大家介紹了如何將PyTorch?Lightning模型部署到生產(chǎn)服務(wù)中的詳細(xì)教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • pytorch geometric的GNN、GCN的節(jié)點(diǎn)分類方式

    pytorch geometric的GNN、GCN的節(jié)點(diǎn)分類方式

    這篇文章主要介紹了pytorch geometric的GNN、GCN的節(jié)點(diǎn)分類方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • python 輸出一個(gè)兩行字符的變量

    python 輸出一個(gè)兩行字符的變量

    昨天被一個(gè)哥們問怎么用 python輸出一個(gè)兩行字符的變量。寫了N個(gè)方法都覺得麻煩。
    2009-02-02
  • OpenCV清除小面積連通域的實(shí)現(xiàn)方法

    OpenCV清除小面積連通域的實(shí)現(xiàn)方法

    本文主要介紹了OpenCV清除小面積連通域的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 詳解python關(guān)于多級包之間的引用問題

    詳解python關(guān)于多級包之間的引用問題

    本文主要介紹了python關(guān)于多級包之間的引用問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-08-08
  • python實(shí)現(xiàn)自動搶課腳本的示例代碼

    python實(shí)現(xiàn)自動搶課腳本的示例代碼

    本文主要介紹了python實(shí)現(xiàn)自動搶課腳本的示例代碼,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Python中使用中文的方法

    Python中使用中文的方法

    python的中文問題一直是困擾新手的頭疼問題,這篇文章將給你詳細(xì)地講解一下這方面的知識。當(dāng)然,幾乎可以確定的是,在將來的版本中,python會徹底解決此問題,不用我們這么麻煩了。
    2011-02-02

最新評論