機器學習之numpy和matplotlib學習(四)
之前我們學習的都是怎麼在一個程式裡面繪製多張影像,每張影像只有一個座標軸。
可不可以在一張影像裡面有多個座標軸,每個座標軸裡面可以繪畫不同的曲線。
當然可以,今天我們來學習plt.subplot( )函式的使用。參看官方文件http://matplotlib.org/users/pyplot_tutorial.html。
先來說一下這個函式plt.subplot( )它與plt.plot( )相差了一個sub。sub的英文意思是子分塊。
先來講一下程式碼:
#plt.plot()函式裡面有兩個陣列,第一個陣列是x的取值,第二個陣列是y的取值。
#後面的‘ro’代表繪製出來的是圓點而不是一條直線。
plt.plot([1,2,3,4], [1,4,9,16], 'ro')
#plt.axis()函式是繪製時候x和y的取值範圍,這裡x是【0到6】,y是【0到20】
plt.axis([0, 6, 0, 20])
對上面講解的完整演示程式碼如下:
import matplotlib.pyplot as plt
plt.plot([1,2,3,4], [1,4,9,16], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()
結果如下:
這裡補充兩點
1.我們知道plt.axis()函式是繪製時候x和y的取值範圍,這裡x是【0到6】,y是【0到20】
也可以分別設定x和y的繪製時候的取值範圍:
#對x設定繪製時候的取值範圍。
plt.xlim(0,6)
#對x設定繪製時候的取值範圍。
plt.ylim(0,20)
#等價於plt.axis([0, 6, 0, 20])
2 .我們之前的plt.plot([1,2,3,4], [1,4,9,16], 'ro')中傳入了兩組資料,如果只傳入一組資料的話,預設為y的資料。
實踐如下:
import matplotlib.pyplot as plt
plt.plot([1,4,9,16], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()
結果如下:
可以看到是有差別的。
下面學習一下:subplot(numRows, numCols, plotNum)。
圖表的整個繪圖區域被分成numRows行和numCols列。
plotNum引數指定建立的影像物件所在的區域。
如:(2,2,1)相當於把一個figure分成一個2x2的網格佈局。plotNum等於1,也就是繪製的影像是網格佈局的第一塊區域。
程式碼演示:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author : SundayCoder-俊勇
# @File : figure3.py
import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(-5,5,50)
y1=2*x+1
y2=x*x
y3=x*x+2*x
y4=x+1
plt.figure()
# 第一個子圖
plt.subplot(2,2,1)
plt.plot(x,y1)
plt.title("first subplot")
# 第二個子圖
plt.subplot(2,2,2)
plt.plot(x,y2)
plt.title("second subplot")
# 第三個子圖
plt.subplot(2,2,3)
plt.plot(x,y3)
plt.title("third subplot")
# 第四個子圖
plt.subplot(2,2,4)
plt.plot(x,y4)
plt.title("Fourth subplot")
plt.show()
結果:
學習完畢
這裡補充一點。例如,plt.subplot(2,2,4)沒有逗號分隔也可以的。
可以變成plt.subplot(2,2,4)
你試一下??
一樣可以,但是如果數字大於10的話就必須使用逗號分隔。
一般我們用的最多的分隔是2*2網格,分割多了影像太小不好觀察,到後面機器學習如果用到的話一般都是2x2分割佈局。
更新完畢
相關文章
- python綜合學習四之Numpy和Pandas(下)Python
- 給深度學習入門者的Python快速教程 - Numpy和Matplotlib篇深度學習Python
- 【機器學習】--Python機器學習庫之Numpy機器學習Python
- Python之numpy學習Python
- Python學習之Pandas和Numpy的區別!Python
- 機器學習之Numpy與張量機器學習
- 機器學習之學習速率機器學習
- Numpy學習(2)numpy向量化、numpy操作
- Python機器學習、深度學習:快速、完全的Numpy入門指南Python機器學習深度學習
- 機器學習之學習曲線機器學習
- Numpy的Matplotlib視覺化視覺化
- 學習Tomcat(四)之Engine和Host容器Tomcat
- InnoDB學習(四)之RedoLog和UndoLog
- Python中Numpy及Matplotlib使用Python
- Python - Matplotlib and Numpy on Debian/UbuntuPythonUbuntu
- Numpy學習筆記筆記
- NumPy 學習(1): ndarrays
- numpy 學習總結
- matplotlib 強化學習強化學習
- matplotlib 學習總結
- 寫給人類的機器學習四、神經網路和深度學習機器學習神經網路深度學習
- (五)numpy知識學習2-python資料分析與機器學習實戰(學習筆記)Python機器學習筆記
- 圖片展示 [ Numpy 處理, Matplotlib 展示 ]
- windows下python配置numpy、matplotlib、scipyWindowsPython
- python實踐系列之(一)安裝 python/pip/numpy/matplotlibPython
- Numpy學習筆記 1筆記
- Numpy學習 Day1
- Numpy學習筆記(1)筆記
- python_numPy學習Python
- 重磅福利!!機器學習和深度學習學習資料合集機器學習深度學習
- 機器學習和深度學習的區別機器學習深度學習
- 機器學習和深度學習資源蒐集機器學習深度學習
- 機器學習和深度學習概念入門機器學習深度學習
- numpy的學習筆記\pandas學習筆記筆記
- numpy學習筆記 – numpy陣列的常見用法筆記陣列
- Python NumPy學習總結Python
- 【Numpy學習08】陣列迭代陣列
- 【Task02】Numpy學習打卡