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

Python?matplotlib?繪制散點(diǎn)圖詳解建議收藏

 更新時(shí)間:2021年12月01日 15:41:09   作者:編程簡(jiǎn)單學(xué)  
在數(shù)據(jù)統(tǒng)計(jì)圖表中,有一種圖表是散列點(diǎn)分布在坐標(biāo)中,反應(yīng)數(shù)據(jù)隨著自變量變化的趨勢(shì)。這篇文章主要介紹了如何通過(guò)matplotlib繪制散點(diǎn)圖,需要的朋友可以參考一下

前言

我們?cè)趍atplotlib模塊學(xué)習(xí)中,發(fā)現(xiàn)有常用的反映數(shù)據(jù)變化的折線圖,對(duì)比數(shù)據(jù)類型差異的柱狀圖和反應(yīng)數(shù)據(jù)頻率分布情況的直方圖。

往期內(nèi)容速看

Python用 matplotlib 繪制柱狀圖

Python matplotlib底層原理解析

Python?matplotlib超詳細(xì)教程實(shí)現(xiàn)圖形繪制

其實(shí)在數(shù)據(jù)統(tǒng)計(jì)圖表中,有一種圖表是散列點(diǎn)分布在坐標(biāo)中,反應(yīng)數(shù)據(jù)隨著自變量變化的趨勢(shì)。

本期,我們將詳細(xì)學(xué)習(xí)matplotlib 繪制散點(diǎn)圖相關(guān)屬性的學(xué)習(xí),let's go~

1. 散點(diǎn)圖概述

什么是散點(diǎn)圖?

  • 散點(diǎn)圖用于在水平軸和垂直軸上繪制數(shù)據(jù)點(diǎn),數(shù)據(jù)以點(diǎn)狀分布在左標(biāo)系中
  • 散點(diǎn)圖表示因變量隨著自變量而變化的大致趨勢(shì)
  • 散點(diǎn)圖由多個(gè)左坐標(biāo)點(diǎn)構(gòu)成,考察坐標(biāo)點(diǎn)的分布,判斷是否存在某種關(guān)聯(lián)或者分布模式
  • 對(duì)于不同類別的點(diǎn),則由圖表中不同形狀或顏色的標(biāo)記符表示
  • 散點(diǎn)圖主要分為散點(diǎn)圖矩陣、三維散點(diǎn)圖、ArcGIS散點(diǎn)圖

散點(diǎn)圖使用場(chǎng)景

  • 散點(diǎn)圖用于比較跨類別的聚合數(shù)據(jù)
  • 散點(diǎn)圖用于分析數(shù)據(jù)線性、多項(xiàng)式趨勢(shì)情況
  • 散點(diǎn)圖用于四象限分析
  • 散點(diǎn)圖用于找到數(shù)據(jù)趨勢(shì)公式
  • 散點(diǎn)圖可以為后期精確的圖標(biāo)進(jìn)行輔助

繪制散點(diǎn)圖步驟

  1. 導(dǎo)入matplotlib.pyplot模塊
  2. 準(zhǔn)備數(shù)據(jù),可以使用numpy/pandas整理數(shù)據(jù)
  3. 調(diào)用pyplot.scatter()繪制散點(diǎn)圖

案例展示

本次案例我們將分析某產(chǎn)品不同定價(jià)銷售額分布情況

案例需要準(zhǔn)備兩組數(shù)據(jù)x和y軸,其中x,y軸的數(shù)據(jù)量要保持一致

x_value = np.random.randint(50,100,50)
y_value = np.random.randint(500,1000,50)

繪制散點(diǎn)

import matplotlib.pyplot as plt
import numpy as np
 
plt.rcParams["font.sans-serif"]=['SimHei'] plt.rcParams["axes.unicode_minus"]=False
 
x_value = np.random.randint(50,100,50)
y_value = np.random.randint(500,1000,50)
 
plt.scatter(x_value,y_value)
 
plt.title("data analyze")
plt.xlabel("銷售價(jià)格")
plt.ylabel("銷售額")
 
plt.show()

?2. 散點(diǎn)圖屬性

設(shè)置散點(diǎn)大小

關(guān)鍵字:s

傳入數(shù)據(jù)類型為list或者數(shù)字,默認(rèn)為20

設(shè)置散點(diǎn)顏色

關(guān)鍵字:c

默認(rèn)顏色為藍(lán)色

取值范圍

  • 表示顏色的英文單詞:如紅色"red"
  • 表示顏色單詞的簡(jiǎn)稱如:紅色"r",黃色"y"
  • RGB格式:十六進(jìn)制格式如"#88c999";(r,g,b)元組形式
  • 也可以傳入顏色列表

設(shè)置散點(diǎn)樣式

關(guān)鍵字:marker

系統(tǒng)默認(rèn)為'o'小圓圈

取值還可以?。?'o', 'v', '^', '<', '>', '8', 's', 'p', '*', 'h', 'H', 'D', 'd', 'P', 'X')

設(shè)置透明度

關(guān)鍵字:alpha

取值范圍:0~1

設(shè)置散點(diǎn)邊框

關(guān)鍵字: edgecolor

默認(rèn)為face

取值選項(xiàng):

  • "face"|"none"
  • 表示顏色的英文單詞、簡(jiǎn)寫或者rgb

我們結(jié)合上一節(jié)的案例,設(shè)置散點(diǎn)大小,散點(diǎn)邊框?yàn)榉凵Ⅻc(diǎn)顏色為#88c999

size = (20*np.random.rand(50))**2
plt.scatter(x_value,y_value,s=area,c="#88c999",edgecolors="pink"

3. 添加折線散點(diǎn)圖

我們?cè)诓榭瓷Ⅻc(diǎn)圖時(shí),有時(shí)候會(huì)借助折線圖來(lái)輔助分析。我們繼續(xù)拿第一節(jié)的數(shù)據(jù)來(lái)分析。

我們使用np.random.rand()來(lái)生成100個(gè)隨機(jī)數(shù)據(jù)

x_value = 100*np.random.rand(100)
y_value = 100*np.random.rand(100)

需要借助我們高中的數(shù)學(xué)公司如sin\cos函數(shù)等(高中數(shù)學(xué)都還給老師了)

使用pyplot.plot()方法來(lái)繪制曲線圖

r0 = 80
plt.scatter(x_value,y_value,c="hotpink",edgecolors="blue")
the =  np.arange(0,np.pi/2, 0.01)
plt.plot(r0*np.cos(the),r0*np.sin(the))

4. 多類型散點(diǎn)圖

我們?cè)谟^察數(shù)據(jù)的時(shí)候,會(huì)同時(shí)比較多個(gè)類型數(shù)據(jù),因此我們可以通過(guò)顏色或者散點(diǎn)樣式來(lái)區(qū)分表示

方式一: 使用顏色來(lái)區(qū)分不同類別時(shí),我們需要再添加新的數(shù)據(jù)和scatter方法

x_value = 100*np.random.rand(100)
y_value = 100*np.random.rand(100)
y1_value = 100*np.random.rand(100)
 
plt.scatter(x_value,y_value, c="hotpink",edgecolors="blue",label="A產(chǎn)品")
 
plt.scatter(x_value,y1_value, c="#88c999", edgecolors="y",label="B產(chǎn)品")

方式二:我們可以使用marker來(lái)標(biāo)記不同類型,例如我們使用上一節(jié)的案例再添加一個(gè)scatter()

r0 = 80
 
size = (20*np.random.rand(100))**2
 
r = np.sqrt(x_value**2+y_value**2)
area = np.ma.masked_where(r > r0,size)
area1 = np.ma.masked_where(r <= r0, size)
 
plt.scatter(x_value,y_value,s=area,c="hotpink",edgecolors="blue",label="A產(chǎn)品")
 
plt.scatter(x_value, y_value, s=area1, c="red", edgecolors="y",marker="^",label="B產(chǎn)品")
 
the =  np.arange(0,np.pi/2, 0.01)
plt.plot(r0*np.cos(the),r0*np.sin(the))

5. 顏色條散點(diǎn)圖

在散點(diǎn)圖表中,我們?yōu)榱藢?duì)每個(gè)點(diǎn)顏色深淺進(jìn)行表示,我們可以借助cmap顏色條來(lái)進(jìn)行添加

  • 顏色條顯示關(guān)鍵字:cmap
  • 默認(rèn)為viridis,可選值如accent_r,blues_r,brbg_r,greens_r等等
  • 表示每種顏色從0~100的值

當(dāng)要顯示顏色列表時(shí),我們需要調(diào)用pyplot.colorbar()

例如,我們對(duì)散點(diǎn)圖添加一個(gè)紅色系的顏色列表

size = (20*np.random.rand(100))**2
color = np.random.randint(0,100,100)
plt.scatter(x_value,y_value, s=size, c=color,label="A產(chǎn)品",cmap="afmhot_r")
plt.colorbar()

6. 曲線散點(diǎn)圖

散點(diǎn)圖都是由一個(gè)一個(gè)坐標(biāo)點(diǎn)組成的,當(dāng)這些點(diǎn)具有一定規(guī)律時(shí),我們可以使用散點(diǎn)圖來(lái)繪制曲線。

我們使用scatter()繪制一個(gè)2次方的冪函數(shù)

x_value = list(range(1, 100))
y_value = [x ** 2 for x in x_value]
 
plt.scatter(x_value,y_value,c=y_value,cmap="hot_r",edgecolors="none",s=50)
 
plt.show()

總結(jié)

本期,我們對(duì)matplotlib.pyplot 繪制散點(diǎn)圖scatter方法及相關(guān)屬性進(jìn)行詳細(xì)的學(xué)習(xí)。對(duì)于暫時(shí)沒(méi)有找到規(guī)律的數(shù)據(jù)來(lái)說(shuō),使用散點(diǎn)圖可以快速發(fā)現(xiàn)數(shù)據(jù)的分布情況?

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

相關(guān)文章

  • python操作redis的方法

    python操作redis的方法

    這篇文章主要介紹了python操作redis的方法,包括Python針對(duì)redis的連接、設(shè)置、獲取、刪除等常用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5拖放控件實(shí)例詳解

    python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5拖放控件實(shí)例詳解

    這篇文章主要介紹了python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5使用拖放控件實(shí)例詳解,需要的朋友可以參考下
    2020-02-02
  • Python和C/C++交互的幾種方法總結(jié)

    Python和C/C++交互的幾種方法總結(jié)

    這篇文章主要給大家總結(jié)介紹了Python和C/C++交互的幾種方法,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-05-05
  • python中enumerate函數(shù)用法實(shí)例分析

    python中enumerate函數(shù)用法實(shí)例分析

    這篇文章主要介紹了python中enumerate函數(shù)用法,以實(shí)例形式較為詳細(xì)的分析了enumerate函數(shù)的功能、定義及使用技巧,需要的朋友可以參考下
    2015-05-05
  • Python地圖繪制實(shí)操詳解

    Python地圖繪制實(shí)操詳解

    在本文里我們給大家介紹了用Python繪制地圖的知識(shí)點(diǎn)以及詳細(xì)步驟,需要的朋友們跟著學(xué)習(xí)下。
    2019-03-03
  • python 使用值來(lái)排序一個(gè)字典的方法

    python 使用值來(lái)排序一個(gè)字典的方法

    這篇文章主要介紹了python 使用值來(lái)排序一個(gè)字典的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2018-11-11
  • Python定時(shí)發(fā)送消息的腳本:每天跟你女朋友說(shuō)晚安

    Python定時(shí)發(fā)送消息的腳本:每天跟你女朋友說(shuō)晚安

    今天小編就為大家分享一篇關(guān)于Python定時(shí)發(fā)送消息的腳本:每天跟你女朋友說(shuō)晚安的文章,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • Python的join函數(shù)的用法及實(shí)例

    Python的join函數(shù)的用法及實(shí)例

    這篇文章主要詳細(xì)介紹了python的join函數(shù)的用法及實(shí)例,文章中有詳細(xì)的代碼講解,有一定的參考價(jià)值,需要的同學(xué)可以參考閱讀
    2023-04-04
  • 基于python分享極坐標(biāo)下的幾類典型曲線

    基于python分享極坐標(biāo)下的幾類典型曲線

    這篇文章主要介紹了基于python分享極坐標(biāo)下的幾類典型曲線,極坐標(biāo)系統(tǒng)是一套區(qū)別于笛卡爾直角坐標(biāo)系的二維坐標(biāo)系統(tǒng),下面我們?cè)趐ython的基礎(chǔ)上講解及坐標(biāo)及其下的幾種曲線,需要的小伙伴可以參考一下
    2022-03-03
  • 將Python文件打包成.EXE可執(zhí)行文件的方法

    將Python文件打包成.EXE可執(zhí)行文件的方法

    目前有好幾種方法可以將python文件打包成exe應(yīng)用程序文件,例如py2exe,pyinstaller等,比較下來(lái),還是覺(jué)得pyinstaller使用起來(lái)比較簡(jiǎn)單。
    2019-08-08

最新評(píng)論