图像可视化——matplotlib绘图入门基础
文章目錄
- 1.圖片與子圖
- 2.調整子圖周圍的間距
- 3.顏色、標記和線類型
- 4.刻度、標簽和圖例
- 5.matplotlib設置
1.圖片與子圖
matplotlib所繪制的圖位于圖片(figure)對象中,可以使用plt.figure生成一個新的圖片
import matplotlib.pyplot as plt import numpy as np fig = plt.figure()使用add_subplot創建一個或多個子圖
ax1 = fig.add_subplot(2, 2, 1)上面的代碼意思是將圖片分為為2 * 2個(最多4個圖形)子圖,并且我們選擇了4個圖形中的第一個圖形
將這些代碼在同一單元格下運行,當不指定性的輸入繪圖命令時,會在最后一個子圖上繪制
fig = plt.figure() ax1 = fig.add_subplot(2, 2, 1) ax2 = fig.add_subplot(2, 2, 2) ax3 = fig.add_subplot(2, 2, 3) plt.plot([1.5, 3.5, -2, 1.6]) # 畫在最后一個子圖上 ax1.hist(np.random.randn(100),bins = 20,color = 'k',alpha = 0.3) ax2.scatter(np.arange(30),np.arange(30) + 3 * np.random.randn(30))使用plt.subplot方法,創建一個新的圖片,然后返回包含了已生成子圖對象的Numpy數組
fig,axes = plt.subplots(2,3) axes array([[<matplotlib.axes._subplots.AxesSubplot object at 0x00000206D5667A48>,<matplotlib.axes._subplots.AxesSubplot object at 0x00000206D8D5D108>,<matplotlib.axes._subplots.AxesSubplot object at 0x00000206D8BBCAC8>],[<matplotlib.axes._subplots.AxesSubplot object at 0x00000206D8F70588>,<matplotlib.axes._subplots.AxesSubplot object at 0x00000206D8FAC048>,<matplotlib.axes._subplots.AxesSubplot object at 0x00000206D8FDED48>]],dtype=object)2.調整子圖周圍的間距
使用subplots_adjust方法更改間距
subplots_adjust(left = None,bottom = None,right = None,top = None,wapace = None,hspace = None)wspace和hspace分別控制圖片的寬度和高度的百分比,用作子圖間的間距
fig, axes = plt.subplots(2, 2,sharex = True, sharey = True) # 所有子圖使用相同的x軸和y軸 for i in range(2):for j in range(2):axes[i, j].hist(np.random.randn(500), bins = 50, color = 'k', alpha = 0.5) plt.subplots_adjust(wspace = 0,hspace = 0) data = np.random.randn(30).cumsum() data array([ 1.28099548, 2.75456071, 1.77403079, 2.20068184, 4.93574728,5.66352305, 6.65017461, 7.18511111, 5.51788085, 6.17269346,6.36293879, 6.34804836, 5.23303741, 4.16573077, 2.31256438,3.3868217 , 3.94358985, 2.37206249, 2.40933918, 2.31372561,2.41143179, 3.24563762, 3.19214401, 2.55892644, 4.00963688,3.76547399, 1.53796653, 1.43429435, -0.57085528, -0.77787963])3.顏色、標記和線類型
matplotlib主函數plot接收帶有x和y軸的數組以及一些可選的字符串參數來指明顏色和線類型
x =[1, 2, 3] y = [3, 5, 2] plt.plot(x, y, 'g--')還可以用更加顯示的方法來表達
plt.plot(x, y, linestyle = '--',color = 'g') plt.plot(np.random.randn(30), 'ko--')顯示寫法
plt.plot(np.random.randn(30),color = 'k', linestyle = '--', marker = 'o')4.刻度、標簽和圖例
plot接口設計為交互式使用,包含了像xlim、xticks和xticklabels等方法。
分別表示繪圖范圍,刻度位置以及刻度標簽
如:plt.xlim([0, 10]) 會將x軸的范圍設置為0到10
使用xlabel和ylabel定義x軸和有軸標簽
使用title為圖標定義標題
import numpy as np import matplotlib.pyplot as pltx = np.linspace(-np.pi, np.pi, 100) # 在區間內生成21個等差數 y = np.sin(x) linear_y = 0.2 * x + 0.1plt.figure(figsize = (8, 6)) # 自定義窗口的大小plt.plot(x, y) plt.plot(x, linear_y, color = "red", linestyle = '--') # 自定義顏色和表示方式plt.title('y = sin(x) and y = 0.2x + 0.1') # 定義該曲線的標題plt.xticks([-3.5,-2.5,-1.5,0,1.5,2.5,3.5]) # 自定義x軸刻度 plt.xlabel('x') # 定義橫軸標簽 plt.ylabel('y') # 定義縱軸標簽plt.show()添加圖例:
即為圖表添加說明性的信息 import numpy as np import matplotlib.pyplot as pltx = np.linspace(-np.pi, np.pi, 100) # 在區間內生成21個等差數 y = np.sin(x) linear_y = 0.2 * x + 0.1plt.figure(figsize = (8, 6)) # 自定義窗口的大小plt.plot(x, y) plt.plot(x, linear_y, color = "red", linestyle = '--',label = 'y = 0.2 * x + 0.1') # 自定義顏色和表示方式plt.title('y = sin(x) and y = 0.2x + 0.1') # 定義該曲線的標題plt.xticks([-3.5,-2.5,-1.5,0,1.5,2.5,3.5]) # 自定義x軸刻度 plt.xlabel('x') # 定義橫軸標簽 plt.ylabel('y') # 定義縱軸標簽 plt.legend() # 顯示圖例plt.show()5.matplotlib設置
matplotlib配置了配色方案和默認設置,這些默認設置都可以用過廣泛的全局參數來定制。
使用rc方法是使用python編程修改配置的一種方法,例如,將全局默認數字大小設置為10*10
plt.rc('figure',figsize = (10,10))rc的第一個參數是你想要自定義的組件,比如’figure’,‘axes’,‘xtick’,'legend’等
可以使用字典來進行設置
font_options = {'family':'monospace','weight':'bold','size':'small'} plt.rc('font',**font_options)總結
以上是生活随笔為你收集整理的图像可视化——matplotlib绘图入门基础的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 学习笔记(15):C++编程FFMpeg
- 下一篇: puzzle(0921)HueBots