?? 一、Matplotlib庫相關(guān)介紹
【介紹】:Matplotlib 是建立在Numpy數(shù)組基礎(chǔ)上的多平臺數(shù)據(jù)可視化程序庫。
安裝
pip install matplotlib
兩種使用方式
- 1、交互式圖形: %matplotlib notebook
- 2、靜態(tài)圖形: %matplotlib inline
導(dǎo)入相關(guān)庫
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
【第一步】:繪制正弦、余弦曲線
x = np.linspace(-5,5,100)
fig = plt.figure()
plt.plot(x,np.sin(x),'-')
plt.plot(x,np.cos(x),'--')
plt.show()

output_正弦、余弦曲線
【第二步】:利用savefig將圖形保存為文件
fig.savefig('my.png')
【第三步】:利用from IPython.display import Image顯示圖形
from IPython.display import Image
Image("my.png")

output_顯示圖形
【第四步】:獲取支持的圖像格式
fig.canvas.get_supported_filetypes()
{'ps': 'Postscript',
'eps': 'Encapsulated Postscript',
'pdf': 'Portable Document Format',
'pgf': 'PGF code for LaTeX',
'png': 'Portable Network Graphics',
'raw': 'Raw RGBA bitmap',
'rgba': 'Raw RGBA bitmap',
'svg': 'Scalable Vector Graphics',
'svgz': 'Scalable Vector Graphics'}
?? 二、畫圖的兩種風(fēng)格
【第一種】:MATLIB 風(fēng)格接口
# 創(chuàng)建圖形
plt.figure()
#(行、列、子圖的編號)
plt.subplot(2,1,1)
plt.plot(x,np.sin(x))
plt.subplot(2,1,2)
plt.plot(x,np.cos(x))
【解釋】:這種風(fēng)格的重要特征是:有狀態(tài)的。會持續(xù)跟蹤當(dāng)前的圖形和坐標(biāo)進行繪制。
- plt.gcf() :獲取當(dāng)前圖形
- plt.gca() : 獲取當(dāng)前坐標(biāo)軸

output_MATLIB 風(fēng)格
【第二種】:面向?qū)ο蠼涌?/h6>
# ax 是包含了兩個Axes對象的數(shù)組
fig, ax = plt.subplots(2)
# 在每個對象上調(diào)用plot()
ax[0].plot(x,np.sin(x))
ax[1].plot(x,np.cos(x))
# ax 是包含了兩個Axes對象的數(shù)組
fig, ax = plt.subplots(2)
# 在每個對象上調(diào)用plot()
ax[0].plot(x,np.sin(x))
ax[1].plot(x,np.cos(x))
【基本思路】:將畫圖實例化對象為ax,( ax 是包含了兩個Axes對象的數(shù)組),然后對每個對象直接調(diào)用plot()等相關(guān)函數(shù)進行繪圖。

output_面向?qū)ο?/div>
?? 三、繪制簡易線型圖
- figure:可以被看做是一個能夠容納各種坐標(biāo)軸、圖形、文字、和標(biāo)簽的容器
- axes: 是一個帶標(biāo)簽和刻度的矩形。
# figure:可以被看做是一個能夠容納各種坐標(biāo)軸、圖形、文字、和標(biāo)簽的容器
# axes: 是一個帶標(biāo)簽和刻度的矩形。
fig = plt.figure()
ax = plt.axes()
【第一步】:沒錯,先繪制一個空白的帶標(biāo)簽和刻度的容器作為繪圖的基礎(chǔ)(就像畫布那樣)。

output_畫布
【第二步】:通過不斷的調(diào)用plot可以在一個畫布上繪制多個圖形。
plt.plot(x,np.sin(x))
plt.plot(x,np.cos(x))

output_繪制圖形
【第三步】:調(diào)整圖形的線條顏色與風(fēng)格
## 顏色 color參數(shù)
plt.plot(x,np.sin(x - 0), color='blue') # 標(biāo)準顏色名稱
plt.plot(x,np.sin(x - 1), color='g') # 縮寫顏色的代碼(rgbcmyk)
plt.plot(x,np.sin(x - 2), color='0.75') # 范圍在0-1直間的灰度值
plt.plot(x,np.sin(x - 3), color='#ff99dd') #十六進制
plt.plot(x,np.sin(x - 4), color=(1.0,0.2,0.3)) #RGB元組,范圍0-1
【補充】:Matplotlib中關(guān)于顏色的表達形式,主要有以下幾種。
- color='blue':標(biāo)準顏色名稱;
- color='g': 縮寫顏色的代碼(rgbcmyk);
- color='0.75':范圍在0-1直間的灰度值;
- color='#ff99dd':十六進制;
- color=(1.0,0.2,0.3):RGB元組,范圍(0,1);

output_顏色的表達形
【第四步】: 使用 linestyle 參數(shù)調(diào)整線條風(fēng)格
plt.plot(x,x+0,linestyle='solid')
plt.plot(x,x+1,linestyle='dashed')
plt.plot(x,x+2,linestyle='dashdot')
plt.plot(x,x+3,linestyle='dotted')

output_線條風(fēng)格
【第五步】:線條風(fēng)格,簡寫形式
plt.plot(x,x+0,linestyle='-') # 實線
plt.plot(x,x+1,linestyle='--') # 虛線
plt.plot(x,x+2,linestyle='-.') # 點劃線
plt.plot(x,x+3,linestyle=':') # 實點線

output_線條風(fēng)格
【第六步】:(參數(shù)組合)將color 和linestyle 組合起來
plt.plot(x,x+0,'-g') # 綠色實線
plt.plot(x,x+1,'--c') # 青色虛線
plt.plot(x,x+3,'-.k') # 黑色點劃線
plt.plot(x,x+4,':r') # 紅色點實線

output_參數(shù)組合
【第七步】:調(diào)整坐標(biāo)軸的上下限
- 方式1:兩個基礎(chǔ)方法:plt.xlim() 和 plt.ylim()
# 方式1:兩個基礎(chǔ)方法:plt.xlim() 和 plt.ylim()
plt.plot(x,np.sin(x))
plt.xlim(-1,11)
plt.ylim(-1.5,1.5)

output_參數(shù)組合
- 方式2:plt.axis([xmin,xmax,ymin,ymax])
# 方式2:plt.axis([xmin,xmax,ymin,ymax])
plt.plot(x,np.sin(x))
plt.axis([-1,11,-1.5,1.5])

output
【第八步】:坐標(biāo)軸逆序顯示,將 xlim() 或者 ylim()的參數(shù)設(shè)置為負值。
plt.plot(x,np.sin(x))
plt.xlim(10,0)
plt.ylim(1.2,-1.2)

output_坐標(biāo)軸逆序
【第九步】:使用 plt.axis('tight') 按照圖形內(nèi)容,自動縮緊坐標(biāo)軸,不留空白。

output_縮緊坐標(biāo)軸
plt.plot(x,np.sin(x))
plt.axis('tight')
【第十步】:讓x和y軸長度單位相同
plt.plot(x,np.sin(x))
plt.axis('equal')

output_單位等長
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- matplotlib的基本使用——學(xué)習(xí)筆記 1、matplotlib簡介 ? matplotlib是Pytho...
- Matplotlib 入門知識 matplotlib在Python中應(yīng)用最多的2D圖像的繪圖工具包,使用matpl...
- Python畫圖之總結(jié)待整理 https://morvanzhou.github.io/tutorials/dat...
- 最近,360安全中心監(jiān)測到了一款名為RedEye(紅眼)勒索病毒,它讓許多中招用戶煩惱不已:說要加密文件,卻直接刪...