亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解Python中matplotlib模塊的繪圖方式

 更新時(shí)間:2022年07月05日 09:58:05   作者:pythonic生物人  
Matplotlib是Python中最受歡迎的數(shù)據(jù)可視化軟件包之一,它是?Python常用的2D繪圖庫(kù),同時(shí)它也提供了一部分3D繪圖接口。本文將詳細(xì)介紹Matplotlib的繪圖方式,需要的可以參考一下

1、matplotlib之父簡(jiǎn)介

matplotlib之父John D. Hunter已經(jīng)去世,他的一生輝煌而短暫,但是他開(kāi)發(fā)的的該開(kāi)源庫(kù)還在繼續(xù)著輝煌。國(guó)內(nèi)介紹的資料太少了,查閱了一番整理如下:

  • 1968 出身于美國(guó)的田納西州代爾斯堡。
  • 之后求學(xué)于普林斯頓大學(xué)。
  • 2003年發(fā)布Matplotlib 0.1版,初衷是博士研究期間為可視化癲癇患者的腦電圖(ECoG)數(shù)據(jù);
  • 之后,美國(guó)國(guó)家航空航天局(NASA)太空望遠(yuǎn)鏡科學(xué)研究所的哈勃望遠(yuǎn)鏡背后團(tuán)隊(duì)(Hubble Space Telescope),選擇Matplotlib作為了畫(huà)圖程序包,并一直為 Matplotlib 開(kāi)發(fā)團(tuán)隊(duì)提供資金支持,從而大大促進(jìn)了 Matplotlib 的發(fā)展。
  • 2004 年于芝加哥大學(xué)獲得神經(jīng)生物學(xué)方向博士學(xué)位。
  • 2005年供職于芝加哥的一家投資公司,從事量化分析(真是生物人遍布各行各業(yè))。
  • 之后以董事的身份創(chuàng)立了專為數(shù)據(jù)科學(xué)贊助的非盈利組織  NumFOCUS Foundation。
  • 2007年美國(guó)鳳凰號(hào)探測(cè)器(Phoenix spacecraft)登錄火星,NASA使用Matplotlib可視化了第一張黑洞的圖片。
  • 2012年因John D. Hunter個(gè)人對(duì)Python和數(shù)據(jù)科學(xué)方向的杰出貢獻(xiàn),被Python社區(qū)授予第一屆PSF Distinguished Service Awards獎(jiǎng)項(xiàng)  。
  • 2012.08 因患惡性結(jié)腸癌英年早逝,享年44歲。
  • 雖然Matplotlib之父已經(jīng)去世,但是,大量開(kāi)源愛(ài)好者在fork著這個(gè)可視化包,延續(xù)著輝煌 https://github.com/matplotlib。
  • NumFOCUS 組織每年夏天會(huì)贊助1到2個(gè)學(xué)生,在高級(jí)貢獻(xiàn)者的帶領(lǐng)下,為Matplolib全職工作10周左右(2018年獎(jiǎng)金多達(dá)$6,000):https://numfocus.org/programs/john-hunter-technology-fellowship
  • 2013年起,SciPy每年舉行可視化比賽:John Hunter Excellence in Plotting Competition,一是為了為了紀(jì)念John Hunter的貢獻(xiàn),二是為了強(qiáng)調(diào)數(shù)據(jù)可視化對(duì)科學(xué)進(jìn)步的重要性,并展示開(kāi)源軟件力量。;2020年報(bào)名截止日期為06月01號(hào),獎(jiǎng)金優(yōu)渥(1st prize: $1000;2nd prize: $750;3rd prize: $500):https://jhepc.github.io/index.html 。

2、matplotlib圖形結(jié)構(gòu)

figure層

指整張圖,可設(shè)置整張圖的分辨率(dpi),長(zhǎng)寬(figsize)、標(biāo)題(title)等特征;

可包含多個(gè)axes,可簡(jiǎn)單理解為多個(gè)子圖(下圖為兩個(gè)axes); 

figure置于canvas系統(tǒng)層之上,用戶不可見(jiàn)。

axes層

每個(gè)子圖,可以繪制各種圖形,例如柱狀圖(bar),餅圖(pie函數(shù)),箱圖(boxplot)等;

設(shè)置每個(gè)圖的外觀網(wǎng)格線(grid)的開(kāi)關(guān)、坐標(biāo)軸(axis)開(kāi)關(guān)等;

設(shè)置每個(gè)坐標(biāo)軸(axis)的名字(label)、子圖標(biāo)題(title)、圖例(legend)等;

設(shè)置坐標(biāo)軸范圍(scale)、坐標(biāo)軸刻度(tricks)等;

下圖中具有兩個(gè)axes:

一張matplotlib圖的組成

下面這張matplotlib圖包含一張圖的常見(jiàn)元素 ,例如標(biāo)題、坐標(biāo)軸、軸標(biāo)簽、刻度、文本注釋、圖例等。

3、matplotlib兩種畫(huà)繪圖方法

方法一:使用matplotlib.pyplot

matplotlib.pyplot簡(jiǎn)介

這種繪圖主要使用pyplot模塊,pyplot.py代碼量有3000多行(windows下存儲(chǔ)于xxx\site-packages\matplotlib\pyplot.py),該腳本里面有大量def定義的函數(shù),繪圖時(shí)就是調(diào)用pyplot.py中的函數(shù)。

pyplot方法繪圖舉例

#matplotlib.pyplot 接口
import numpy as np
import matplotlib.pyplot as plt#導(dǎo)入pyplot,matplotlib.pyplot簡(jiǎn)寫(xiě)為plt
def f(t):
    return np.exp(-t) * np.cos(2*np.pi*t)

t1 = np.arange(0.0, 5.0, 0.1)
t2 = np.arange(0.0, 5.0, 0.02)

plt.figure(dpi=100)
plt.subplot(211)
plt.plot(t1, f(t1), color='tab:blue', marker='o')
plt.plot(t2, f(t2), color='black')
plt.title('demo')

plt.subplot(212)
plt.plot(t2, np.cos(2*np.pi*t2), color='tab:orange', linestyle='--')
plt.suptitle('matplotlib.pyplot api')
plt.show()

方法二:面向?qū)ο蠓椒?/h3>

畫(huà)比較復(fù)雜的圖形時(shí),面向?qū)ο蠓椒〞?huì)更方便。這種繪圖方式主要使用matplotlib的兩個(gè)子類(lèi):matplotlib.figure.Figure和matplotlib.axes.Axes,畫(huà)每張圖時(shí),畫(huà)布為matplotlib.figure.Figure的一個(gè)實(shí)例,每個(gè)子圖為matplotlib.axes.Axes的一個(gè)實(shí)例,分別可以繼承父類(lèi)的所有方法,也就是說(shuō)你繪圖時(shí),你想設(shè)置的元素(網(wǎng)格線啊,坐標(biāo)刻度啊等)都可以在二者的屬性中找出來(lái)使用。

matplotlib.figure.Figure

該對(duì)象主要用于figure的調(diào)整

matplotlib.axes.Axes

面向?qū)ο蠓椒ɡL圖舉例

import numpy as np
import matplotlib.pyplot as plt

def f(t):
    return np.exp(-t) * np.cos(2*np.pi*t)


t1 = np.arange(0.0, 5.0, 0.1)
t2 = np.arange(0.0, 5.0, 0.02)

fig, axs = plt.subplots(2, dpi=100)
#fig為matplotlib.figure.Figure對(duì)象的實(shí)例figure
#axs為matplotlib.axes.Axes對(duì)象實(shí)例(每個(gè)子圖)組成的numpy.ndarray
axs[0].plot(t1, f(t1), color='tab:blue', marker='o')
axs[0].plot(t2, f(t2), color='black')

#兩種設(shè)置標(biāo)題的方法
#axs[0].set_title('haha')#使用matplotlib.axes.Axes的set_title方法設(shè)置小標(biāo)題
axs[0].set(title='demo1')

axs[1].plot(t2, np.cos(2*np.pi*t2), color='tab:orange', linestyle='--')
fig.suptitle('matplotlib object-oriented')#使用matplotlib.figure.Figure中的suptitle方法設(shè)置Figure標(biāo)題
plt.show()

以上就是詳解Python中matplotlib模塊的繪圖方式的詳細(xì)內(nèi)容,更多關(guān)于Python matplotlib繪圖方式的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 如何利用Python將html轉(zhuǎn)為pdf、word文件

    如何利用Python將html轉(zhuǎn)為pdf、word文件

    網(wǎng)絡(luò)上存在很多將HTML轉(zhuǎn)換為PDF的軟件和工具,但是大家都知道收費(fèi),所以下面這篇文章主要給大家介紹了關(guān)于如何利用Python將html轉(zhuǎn)為pdf、word文件的相關(guān)資料,文中通過(guò)示例代碼介紹介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • Python3爬蟲(chóng)學(xué)習(xí)之爬蟲(chóng)利器Beautiful Soup用法分析

    Python3爬蟲(chóng)學(xué)習(xí)之爬蟲(chóng)利器Beautiful Soup用法分析

    這篇文章主要介紹了Python3爬蟲(chóng)學(xué)習(xí)之爬蟲(chóng)利器Beautiful Soup用法,結(jié)合實(shí)例形式分析了Beautiful Soup的功能、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2018-12-12
  • Python實(shí)現(xiàn)對(duì)PPT文件進(jìn)行截圖操作的方法

    Python實(shí)現(xiàn)對(duì)PPT文件進(jìn)行截圖操作的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)對(duì)PPT文件進(jìn)行截圖操作的方法,涉及Python操作幻燈片的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • python版學(xué)生管理系統(tǒng)

    python版學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了python版學(xué)生管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • python 實(shí)現(xiàn)得到當(dāng)前時(shí)間偏移day天后的日期方法

    python 實(shí)現(xiàn)得到當(dāng)前時(shí)間偏移day天后的日期方法

    今天小編就為大家分享一篇python 實(shí)現(xiàn)得到當(dāng)前時(shí)間偏移day天后的日期方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Python基礎(chǔ)教程之if判斷,while循環(huán),循環(huán)嵌套

    Python基礎(chǔ)教程之if判斷,while循環(huán),循環(huán)嵌套

    這篇文章主要介紹了Python基礎(chǔ)教程之if判斷,while循環(huán),循環(huán)嵌套 的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-04-04
  • 詳解Python中圖像邊緣檢測(cè)算法的實(shí)現(xiàn)

    詳解Python中圖像邊緣檢測(cè)算法的實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了python中圖像邊緣檢測(cè)算法的原理及實(shí)現(xiàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Python中DataFrame中的xs用法

    Python中DataFrame中的xs用法

    本文主要介紹了Python中DataFrame中的xs用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Python利用pangu模塊實(shí)現(xiàn)文本格式化小工具

    Python利用pangu模塊實(shí)現(xiàn)文本格式化小工具

    其實(shí)使用pangu做文本格式標(biāo)準(zhǔn)化的業(yè)務(wù)代碼在之前就實(shí)現(xiàn)了,主要能夠?qū)⒅形奈谋疚臋n中的文字、標(biāo)點(diǎn)符號(hào)等進(jìn)行標(biāo)準(zhǔn)化。但是為了方便起來(lái)我們這里使用了Qt5將其做成了一個(gè)可以操作的頁(yè)面應(yīng)用,需要的可以了解一下
    2022-10-10
  • Ubuntu安裝Python3.8的兩種方法詳解

    Ubuntu安裝Python3.8的兩種方法詳解

    這篇文章主要給大家介紹了關(guān)于Ubuntu安裝Python3.8的兩種方法,在Ubuntu上安裝Python非常簡(jiǎn)單,文中介紹了兩種方法,每種方法都給出了詳細(xì)實(shí)例,需要的朋友可以參考下
    2023-09-09

最新評(píng)論