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

Python?matplotlib實(shí)戰(zhàn)之箱型圖繪制

 更新時(shí)間:2023年08月31日 10:59:57   作者:databook  
箱型圖(Box?Plot),也稱為盒須圖或盒式圖,是一種用作顯示一組數(shù)據(jù)分布情況的統(tǒng)計(jì)圖,因型狀如箱子而得名,本文主要為大家介紹了如何使用Matplotlib繪制箱型圖,需要的小伙伴可以參考下

箱型圖(Box Plot),也稱為盒須圖或盒式圖,1977年由美國著名統(tǒng)計(jì)學(xué)家約翰·圖基(John Tukey)發(fā)明,是一種用作顯示一組數(shù)據(jù)分布情況的統(tǒng)計(jì)圖,因型狀如箱子而得名。

它能顯示出一組數(shù)據(jù)的最大值、最小值、中位數(shù)及上下四分位數(shù)。

箱子的頂端和底端,分別代表上下四分位數(shù)。

箱子中間的是中位數(shù)線,它將箱子一分為二。從箱子延伸出去的線條展現(xiàn)出了上下四分位數(shù)以外的數(shù)據(jù),由于這兩根延伸出去的線像是胡須,因此箱形圖也被稱為盒須圖。

箱形圖最大的優(yōu)勢是,它以一種簡單的方式,概括出一個(gè)或多個(gè)數(shù)值變量的分布,同時(shí)又不會(huì)占據(jù)太多空間。

1. 主要元素

它主要由以下五個(gè)元素組成:

  • 最大值:表示數(shù)據(jù)的最大值,排除了異常值后的上限。
  • 上四分位線:數(shù)據(jù)的上四分位數(shù),將數(shù)據(jù)分為四等份,處于上邊緣和中位數(shù)之間的數(shù)據(jù)。也稱為第三四分位數(shù)。
  • 中位數(shù):數(shù)據(jù)的中位數(shù),將數(shù)據(jù)分為兩等份,處于上四分位數(shù)和下四分位數(shù)之間的數(shù)據(jù)。也稱為第二四分位數(shù)。
  • 下四分位線:數(shù)據(jù)的下四分位數(shù),將數(shù)據(jù)分為四等份,處于中位數(shù)和下邊緣之間的數(shù)據(jù)。也稱為第一四分位數(shù)。
  • 最小值:表示數(shù)據(jù)的最小值,排除了異常值后的下限。

2. 適用的場景

箱型圖適用于以下分析場景:

  • 數(shù)據(jù)分布比較:比較不同組數(shù)據(jù)的分布情況。通過將多個(gè)箱型圖放在一起,可以直觀地比較它們的中位數(shù)、四分位數(shù)和離群值等信息,從而了解它們之間的差異。
  • 離群值檢測:檢測數(shù)據(jù)中的離群值。離群值是與其他數(shù)據(jù)點(diǎn)相比明顯偏離的數(shù)據(jù)點(diǎn),它們可能是數(shù)據(jù)收集或記錄過程中的異?;蝈e(cuò)誤。箱型圖中的離群點(diǎn)可以幫助識(shí)別這些異常值。
  • 數(shù)據(jù)中心趨勢和離散程度:通過中位數(shù)和四分位距(上四分位數(shù)與下四分位數(shù)之差)展示了數(shù)據(jù)的中心趨勢和離散程度。中位數(shù)提供了數(shù)據(jù)的中心位置,四分位距提供了數(shù)據(jù)的離散程度。
  • 數(shù)據(jù)分布形狀:提供關(guān)于數(shù)據(jù)分布形狀的一些信息。例如,如果箱型圖的上下邊緣和中位數(shù)都接近,箱型圖可能顯示出對稱的分布。如果箱型圖的上邊緣比下邊緣長,中位數(shù)偏向下邊緣,可能顯示出右偏分布。

3. 不適用的場景

箱型圖不適用于以下分析場景:

  • 數(shù)據(jù)樣本過小:當(dāng)數(shù)據(jù)樣本過小時(shí),箱型圖可能無法提供足夠的信息來準(zhǔn)確描述數(shù)據(jù)的分布情況。
  • 數(shù)據(jù)分布復(fù)雜:當(dāng)數(shù)據(jù)分布非常復(fù)雜或包含多個(gè)峰值時(shí),箱型圖可能無法完全捕捉到數(shù)據(jù)的特征。
  • 數(shù)據(jù)缺失:如果數(shù)據(jù)中存在大量缺失值,箱型圖可能無法提供準(zhǔn)確的分布信息。

4. 分析實(shí)戰(zhàn)

本次通過箱型圖分析我國三大產(chǎn)業(yè)對GDP的貢獻(xiàn)情況。

4.1. 數(shù)據(jù)來源

數(shù)據(jù)來自國家統(tǒng)計(jì)局公開的歷年數(shù)據(jù),整理好的文件從下面的地址下載:databook.top/nation/A02

使用的是其中的 A0201.csv 文件(國內(nèi)生產(chǎn)總值)

fp = "d:/share/data/A0201.csv"
df = pd.read_csv(fp)
df

4.2. 數(shù)據(jù)清理

過濾出三大產(chǎn)業(yè)在2013年~2022年的增加值數(shù)據(jù)。

data = df[df["zb"].isin(["A020103", 
                         "A020104",
                         "A020105"])].copy()
data = data[data["sj"] > 2012]
data

其中,A020103,A020104A020105 分別是三大產(chǎn)業(yè)的指標(biāo)編號。

4.3. 分析結(jié)果可視化

通過箱型圖展示三大產(chǎn)業(yè)的增加值情況:

fig = plt.figure()
ax = fig.add_axes([0.1, 0.1, 1, 1])
graph = ax.boxplot(
    [
        data[data["zb"] == "A020103"].loc[:, "value"],
        data[data["zb"] == "A020104"].loc[:, "value"],
        data[data["zb"] == "A020105"].loc[:, "value"],
    ],
    vert=True,
    patch_artist=True,
    labels=["第一產(chǎn)業(yè)", "第二產(chǎn)業(yè)", "第三產(chǎn)業(yè)"]
)
ax.set_title("2013~2022 三大產(chǎn)業(yè)對GDP增加值(億元)")
colors = ['pink', 'lightblue', 'lightgreen']
for patch, color in zip(graph['boxes'], colors):
    patch.set_facecolor(color)
plt.show()

從圖中可以看出,近10年來,第一產(chǎn)業(yè)的增加值明顯低于其他兩個(gè)產(chǎn)業(yè)。

第二第三產(chǎn)業(yè)的上下限的值相差比較大,說明增長或者下降比較明顯(看了數(shù)據(jù),是增長明顯)。

第一產(chǎn)業(yè)的中位數(shù)(紅色的橫線)偏下半部分,說明多數(shù)的年份增加值比較低

第二產(chǎn)業(yè)的中位數(shù)(紅色的橫線)偏上半部分,說明多數(shù)的年份增加值比較高。

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

相關(guān)文章

  • python可視化 matplotlib畫圖使用colorbar工具自定義顏色

    python可視化 matplotlib畫圖使用colorbar工具自定義顏色

    這篇文章主要介紹了python可視化 matplotlib畫圖使用colorbar工具自定義顏色,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • python實(shí)現(xiàn)一個(gè)簡單的并查集的示例代碼

    python實(shí)現(xiàn)一個(gè)簡單的并查集的示例代碼

    本篇文章主要介紹了python實(shí)現(xiàn)一個(gè)簡單的并查集的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • Python中NumPy的線性代數(shù)子模塊linalg詳解

    Python中NumPy的線性代數(shù)子模塊linalg詳解

    這篇文章主要介紹了Python中NumPy的線性代數(shù)子模塊linalg詳解,NumPy 的線性代數(shù)子模塊linalg提供了 20 余個(gè)函數(shù),用于求解行列式、逆矩陣、特征值、特征向量,以及矩陣分解等,需要的朋友可以參考下
    2023-08-08
  • Python Matplotlib數(shù)據(jù)可視化模塊使用詳解

    Python Matplotlib數(shù)據(jù)可視化模塊使用詳解

    matplotlib是基建立在python之上,適用于創(chuàng)建靜態(tài),動(dòng)畫和交互式可視化,通常與數(shù)據(jù)分析模塊pandas搭配使用,用于數(shù)據(jù)的分析和展示,適用于主流的操作系統(tǒng),如Linux、Win、Mac
    2022-11-11
  • Python 20行簡單實(shí)現(xiàn)有道在線翻譯的詳解

    Python 20行簡單實(shí)現(xiàn)有道在線翻譯的詳解

    這篇文章主要介紹了Python實(shí)現(xiàn)有道在線翻譯的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Python連接mssql數(shù)據(jù)庫編碼問題解決方法

    Python連接mssql數(shù)據(jù)庫編碼問題解決方法

    這篇文章主要介紹了Python連接mssql數(shù)據(jù)庫編碼問題解決方法,本文方法同樣適用mysql、sqllite、mongodb等數(shù)據(jù)庫,需要的朋友可以參考下
    2015-01-01
  • python爬蟲常見錯(cuò)誤集合

    python爬蟲常見錯(cuò)誤集合

    這篇文章主要介紹了python爬蟲常見錯(cuò)誤,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • python解釋模型庫Shap實(shí)現(xiàn)機(jī)器學(xué)習(xí)模型輸出可視化

    python解釋模型庫Shap實(shí)現(xiàn)機(jī)器學(xué)習(xí)模型輸出可視化

    Shap 是一個(gè)開源的 python 庫,用于解釋模型。它可以創(chuàng)建多種類型的可視化,有助于了解模型和解釋模型是如何工作的。在本文中,我們將會(huì)分享一些Shap創(chuàng)建的不同類型的機(jī)器學(xué)習(xí)模型可視化
    2021-11-11
  • Python正則表達(dá)式學(xué)習(xí)小例子

    Python正則表達(dá)式學(xué)習(xí)小例子

    這篇文章主要介紹了Python正則表達(dá)式學(xué)習(xí)小例子,學(xué)習(xí)python的朋友可以參考一下
    2020-03-03
  • Python如何計(jì)算兩個(gè)不同類型列表的相似度

    Python如何計(jì)算兩個(gè)不同類型列表的相似度

    在編程中,經(jīng)常需要比較兩個(gè)列表的相似度,尤其是當(dāng)這兩個(gè)列表包含不同類型的元素時(shí),下面小編就來講講如何使用Python計(jì)算兩個(gè)不同類型列表的相似度吧
    2025-02-02

最新評論