使用Matplotlib畫圖系列(一)


實現一個最簡單的plot函數調用:

1 import matplotlib.pyplot as plt
2 
3 y=pp.DS.Transac_open  # 設置y軸數據,以數組形式提供
4 
5 x=len(y)           # 設置x軸,以y軸數組長度為寬度
6 x=range(x)      # 以0開始的遞增序列作為x軸數據
7 
8 plt.plot(x,y)  #  只提供x軸,y軸參數,畫最簡單圖形

圖形輸出結果類似於:

 

加入新方法:

plt.figure() :自定義畫布大小

plt.subplot() :設置畫布划分以及圖像在畫布上輸出的位置

import matplotlib.pyplot as plt

y=pp.DS.Transac_open  # 設置y軸數據,以數組形式提供

x=len(y)           # 設置x軸,以y軸數組長度為寬度
x=range(x)      # 以0開始的遞增序列作為x軸數據

#==============================
plt.figure(figsize=(8,8),dpi=80)  # 畫圖之前首先設置figure對象,此函數相當於設置一塊自定義大小的畫布,使得后面的圖形輸出在這塊規定了大小的畫布上,其中參數figsize設置畫布大小
plt.subplot(221) # 將figure設置的畫布大小分成幾個部分,參數‘221’表示2(row)x2(colu),即將畫布分成2x2,兩行兩列的4塊區域,1表示選擇圖形輸出的區域在第一塊,圖形輸出區域參數必須在“行x列”范圍                       ,此處必須在1和2之間選擇——如果參數設置為subplot(111),則表示畫布整個輸出,不分割成小塊區域,圖形直接輸出在整塊畫布上
plt.plot(y,xx) # 在2x2畫布中第一塊區域輸出圖形
plt.subplot(222) 
plt.plot(y,xx)    #在2x2畫布中第二塊區域輸出圖形
plt.show()
plt.subplot(223)  #在2x2畫布中第三塊區域輸出圖形
plt.plot(y,xx)
plt.subplot(224)  # 在在2x2畫布中第四塊區域輸出圖形
plt.plot(y,xx)
#==============================

plt.plot(x,y)  #  只提供x軸,y軸參數,畫最簡單圖形

 

輸出結果:

 

加入新方法:

plt.xticks():設置x軸刻度的表現方式

plt.xlim():設置x軸刻度的取值范圍

 1 import matplotlib.pyplot as plt
 2 import numpy as nu
 3 
 4 y=pp.DS.Transac_open  # 設置y軸數據,以數組形式提供
 5 
 6 x=len(y)           # 設置x軸,以y軸數組長度為寬度
 7 x=range(x)      # 以0開始的遞增序列作為x軸數據
 8 
 9 plt.figure(figsize=(8,8),dpi=80)  # 畫圖之前首先設置figure對象,此函數相當於設置一塊自定義大小的畫布,使得后面的圖形輸出在這塊規定了大小的畫布上,其中參數figsize設置畫布大小
10 plt.subplot(111) # 將figure設置的畫布大小分成幾個部分,參數‘221’表示2(row)x2(colu),即將畫布分成2x2,兩行兩列的4塊區域,1表示選擇圖形輸出的區域在第一塊,圖形輸出區域參數必須在“行x列”范圍                       ,此處必須在1和2之間選擇——如果參數設置為subplot(111),則表示畫布整個輸出,不分割成小塊區域,圖形直接輸出在整塊畫布上
11 plt.plot(y,x)
12 #================================
13 plt.xlim(0,1000)  #  設置x軸刻度范圍,從0~1000
14 plt.ylim(0,20)   # 設置y軸刻度的范圍,從0~20
15 
16 plt.xticks(nu.linspace(0,1000,15,endpoint=True))  # 設置x軸刻度
17 plt.yticks(nu.linspace(0,20,10,endpoint=True))  # 設置y軸刻度
18 #numpy.linspace()方法返回一個等差數列數組,第一個參數表示等差數列的第一個數,第二個參數表示等差數列最后一個數,第三個參數設置組成等差數列的元素個數,endpoint參數設置最后一個數是否包含在該等差數列。數列中相鄰元素間的步長值為隨機
19 如:nu.linspace(0,1000,15,endpoint=True)表示:第一個元素為0,最后一個數為1000,在這個 范圍內,取15個值,構成一個等差數列,步長值隨機,且1000包含在該數列中
20 #================================
21 plt.show()

圖形輸出結果:

 修改plot方法,新加入參數:

plt.plot(y,xx,color='red',linewidth=2.5,linestyle='-') # color參數設置曲線顏色,linewidth設置曲線寬度,linestyle設置曲線風格

輸出結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM