Python?matplotlib實(shí)戰(zhàn)之散點(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)文章
對(duì)Python中DataFrame選擇某列值為XX的行實(shí)例詳解
今天小編就為大家分享一篇對(duì)Python中DataFrame選擇某列值為XX的行實(shí)例詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01python dict remove數(shù)組刪除(del,pop)
我們?cè)谟脭?shù)組列表做刪除的時(shí)候,可能選擇2個(gè)方法,一個(gè)是del,一個(gè)是pop方法2013-03-03python 自動(dòng)重連wifi windows的方法
今天小編就為大家分享一篇python 自動(dòng)重連wifi windows的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12pytorch: Parameter 的數(shù)據(jù)結(jié)構(gòu)實(shí)例
今天小編就為大家分享一篇pytorch: Parameter 的數(shù)據(jù)結(jié)構(gòu)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12Python獲取時(shí)光網(wǎng)電影數(shù)據(jù)的實(shí)例代碼
這篇文章主要介紹了Python獲取時(shí)光網(wǎng)電影數(shù)據(jù),基本原理是先通過(guò)requests庫(kù),通過(guò)時(shí)光網(wǎng)自帶的電影數(shù)據(jù)API接口,獲取到指定的電影數(shù)據(jù),本文結(jié)合示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09python+selenium實(shí)現(xiàn)QQ郵箱自動(dòng)發(fā)送功能
這篇文章主要為大家詳細(xì)介紹了python+selenium實(shí)現(xiàn)QQ郵箱自動(dòng)發(fā)送功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01Python機(jī)器學(xué)習(xí)算法庫(kù)scikit-learn學(xué)習(xí)之決策樹實(shí)現(xiàn)方法詳解
這篇文章主要介紹了Python機(jī)器學(xué)習(xí)算法庫(kù)scikit-learn學(xué)習(xí)之決策樹實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了決策樹算法的原理及使用sklearn庫(kù)實(shí)現(xiàn)決策樹的相關(guān)操作技巧,需要的朋友可以參考下2019-07-07TensorFlow神經(jīng)網(wǎng)絡(luò)優(yōu)化策略學(xué)習(xí)
這篇文章主要介紹了TensorFlow神經(jīng)網(wǎng)絡(luò)優(yōu)化策略2018-03-03