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

Python?matplotlib實(shí)戰(zhàn)之散點(diǎn)圖繪制

 更新時(shí)間:2023年08月27日 09:12:30   作者:databook  
散點(diǎn)圖,又名點(diǎn)圖、散布圖、X-Y圖,是將所有的數(shù)據(jù)以點(diǎn)的形式展現(xiàn)在平面直角坐標(biāo)系上的統(tǒng)計(jì)圖表,本文主要為大家介紹了如何使用Matplotlib繪制散點(diǎn)圖,需要的可以參考下

散點(diǎn)圖,又名點(diǎn)圖、散布圖、X-Y圖,是將所有的數(shù)據(jù)以點(diǎn)的形式展現(xiàn)在平面直角坐標(biāo)系上的統(tǒng)計(jì)圖表。

散點(diǎn)圖常被用于分析變量之間的相關(guān)性。

  • 如果兩個(gè)變量的散點(diǎn)看上去都在一條直線附近波動(dòng),則稱變量之間是線性相關(guān)的;
  • 如果所有點(diǎn)看上去都在某條曲線(非直線)附近波動(dòng),則稱此相關(guān)為非線形相關(guān)的;
  • 如果所有點(diǎn)在圖中沒(méi)有顯示任何關(guān)系,則稱變量間是不相關(guān)的。

散點(diǎn)圖一般需要兩個(gè)不同變量,一個(gè)沿x軸繪制,另一個(gè)沿y軸繪制。

眾多的散點(diǎn)疊加后,有助于展示數(shù)據(jù)集的“整體景觀”,從而幫助我們分析兩個(gè)變量之間的相關(guān)性,或找出趨勢(shì)和規(guī)律。

1. 主要元素

散點(diǎn)圖的主要元素包括:

  • 橫軸:表示自變量。
  • 縱軸:表示因變量。
  • 數(shù)據(jù)點(diǎn):每個(gè)數(shù)據(jù)點(diǎn)代表一個(gè)觀測(cè)值,它在坐標(biāo)軸上的位置表示兩個(gè)變量的對(duì)應(yīng)取值。
  • 趨勢(shì)線:趨勢(shì)線是通過(guò)數(shù)據(jù)點(diǎn)擬合出的一條線,用于顯示變量之間的趨勢(shì)或關(guān)聯(lián)性。

2. 適用的場(chǎng)景

散點(diǎn)圖適用的分析場(chǎng)景包括:

  • 變量關(guān)系探索:幫助我們觀察和理解兩個(gè)變量之間的關(guān)系。通過(guò)觀察數(shù)據(jù)點(diǎn)的分布情況和趨勢(shì)線的形狀,可以判斷變量之間是否存在線性關(guān)系、非線性關(guān)系或無(wú)關(guān)系。
  • 趨勢(shì)分析:用于分析趨勢(shì)和預(yù)測(cè)。通過(guò)觀察趨勢(shì)線的方向和斜率進(jìn)行預(yù)測(cè)。
  • 群體分析:散點(diǎn)圖可以幫助我們觀察和識(shí)別數(shù)據(jù)點(diǎn)的聚類情況。
  • 異常值檢測(cè):散點(diǎn)圖可以用于檢測(cè)異常值或離群點(diǎn)。

3. 不適用的場(chǎng)景

散點(diǎn)圖不適用的分析場(chǎng)景包括:

  • 時(shí)間序列分析:散點(diǎn)圖主要用于展示兩個(gè)變量之間的關(guān)系,對(duì)于時(shí)間序列數(shù)據(jù),通常使用折線圖或其他適合展示時(shí)間變化的圖表類型。
  • 多變量分析:散點(diǎn)圖只能展示兩個(gè)變量之間的關(guān)系,對(duì)于多個(gè)變量之間的關(guān)系分析,需要使用其他圖表類型,如散點(diǎn)矩陣、平行坐標(biāo)圖等。
  • 分布分析:散點(diǎn)圖主要關(guān)注變量之間的關(guān)系,而不是變量本身的分布情況。如果需要分析變量的分布特征,可以使用直方圖、箱線圖等圖表類型。

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

散點(diǎn)圖適合尋找兩個(gè)變量之間的關(guān)系,本次分析 **空氣污染 **方面的數(shù)據(jù)情況。

4.1. 數(shù)據(jù)來(lái)源

數(shù)據(jù)來(lái)源國(guó)家統(tǒng)計(jì)局公開的數(shù)據(jù)。
用到的兩個(gè)統(tǒng)計(jì)數(shù)據(jù)分別是:

  • 工業(yè)污染治理中,每年治理廢氣的投資額
  • 廢氣中二氧化硫的每年排放量情況

整理好的數(shù)據(jù)可從下面的地址下載:databook.top/nation/A0C

A0C05.csv(廢氣中主要污染物排放) 和 A0C0I.csv(工業(yè)污染治理投資) 兩個(gè)文件。

fp = "d:/share/data/A0C05.csv"
df1 = pd.read_csv(fp)
df1

fp = "d:/share/data/A0C0I.csv"
df2 = pd.read_csv(fp)
df2

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

2022年數(shù)據(jù)是空的,所以從兩個(gè)文件中分別提取 2012~2021年期間,匯總**所有廢氣排放量(萬(wàn)噸)治理廢氣項(xiàng)目完成投資(萬(wàn)元) **兩類數(shù)據(jù)繪制圖形。

#所有廢氣的排放量
data_x = df1[(df1["sj"] >= 2012) &
            (df1["sj"] <= 2021)]
data_x = data_x.loc[:, ["sj", "value"]]
data_x = data_x.groupby("sj").sum("value")
#治理廢氣項(xiàng)目投資 A0C0I03是治理廢氣投資的編號(hào)
data_y = df2[(df2["sj"] >= 2012) &
            (df2["sj"] <= 2021) &
            (df2["zb"] == "A0C0I03")]
data_y = data_y.sort_index(ascending=False)

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

with plt.style.context("seaborn-v0_8"):
    fig = plt.figure()
    ax = fig.add_axes([0.1, 0.1, 0.6, 0.6])
    ax.scatter(data_x["value"], data_y["value"]/10000)
    ax.set_xlabel("廢氣排放量(萬(wàn)噸)")
    ax.set_ylabel("治理廢氣項(xiàng)目完成投資(億元)")

從分析結(jié)果圖中來(lái)看,排放的廢氣量越大的時(shí)候,治理的投資費(fèi)用也越高。

但是右下角紅色框內(nèi)有一個(gè)異常值,那個(gè)是2012年的數(shù)據(jù)。

估計(jì)那時(shí)候還不太重視環(huán)保,所以即使那時(shí)候廢氣排放量大,用于治理廢氣的投資費(fèi)用也不高。

以上就是Python matplotlib實(shí)戰(zhàn)之散點(diǎn)圖繪制的詳細(xì)內(nèi)容,更多關(guān)于matplotlib散點(diǎn)圖的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論