轉自:https://blog.csdn.net/sa14023053/article/details/51835034
導入繪圖包
import matplotlib.pyplot as plt import numpy as np
- 1
- 2
使用from pylab import *一次導入matplotlib.pyplot和numpy也可以,但是不推薦,推薦像上面一樣分別導入,以防導入中出現錯誤而難以檢查。
生成模擬數據點
X = np.linspace(-np.pi, np.pi, 256,endpoint=True) C,S = np.cos(X), np.sin(X)
- 1
- 2
- arange()類似於內置函數range(),通過指定開始值、終值和步長創建表示等差數列的一維數組,注意得到的結果數組不包含終值。
- linspace()通過指定開始值、終值和元素個數創建表示等差數列的一維數組,可以通過endpoint參數指定是否包含終值,默認值為True,即包含終值。
繪圖
# 創建一個 8 * 6 點(point)的圖,並設置分辨率為 80 figure(figsize=(8,6), dpi=80) # 創建一個新的 1 * 1 的子圖,接下來的圖樣繪制在其中的第 1 塊(也是唯一的一塊) subplot(1,1,1) X = np.linspace(-np.pi, np.pi, 256,endpoint=True) C,S = np.cos(X), np.sin(X) # 繪制余弦曲線,使用藍色的、連續的、寬度為 1 (像素)的線條 plot(X, C, color="blue", linewidth=1.0, linestyle="-") # 繪制正弦曲線,使用綠色的、連續的、寬度為 1 (像素)的線條 plot(X, S, color="green", linewidth=1.0, linestyle="-") # 設置橫軸的上下限 xlim(-4.0,4.0) # 設置橫軸記號 xticks(np.linspace(-4,4,9,endpoint=True)) # 設置縱軸的上下限 ylim(-1.0,1.0) # 設置縱軸記號 yticks(np.linspace(-1,1,5,endpoint=True)) # 以分辨率 72 來保存圖片 # savefig("exercice_2.png",dpi=72) # 在屏幕上顯示 show()
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32

繪圖過程關鍵步驟
- 1、要定義一個
figure
matplotlib.pyplot.figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=<class 'matplotlib.figure.Figure'>,**kwargs)
figure(figsize=(8,6), dpi=80)
- 1
這里只指定了figure大小,分辨率dpi,還有下面的參數:
num:figure對象標記
facecolor:背景顏色
edgecolor:邊框顏色
-
2、用
plot在figure上畫點matplotlib.pyplot.plot(*args, **kwargs)- 1
plot傳入序列數據,傳入一個序列的時候,橫軸顯示的是序列里元素的索引,縱軸顯示的是序列里的數字,傳入兩個序列的時候,取最短的那個序列長度,在橫軸和縱軸上畫點。有如下參數:
線條屬性:實線,虛線,點橫線等等
線條標記:點,正方形,星型
線條顏色:藍,紅,青,綠,黃,黑

- 3、設置橫軸、縱軸上下限以及刻度
xlim(-4.0,4.0) ylim(-1.0,1.0)#起始點和結束點 xticks(np.linspace(-4,4,9,endpoint=True)) yticks(np.linspace(-4,4,9,endpoint=True))#刻度,傳入的參數是列表List,如果要顯示字符,就傳入兩個列表,一個是刻度,一個是要顯示在坐標軸上的字符。
- 1
- 2
- 3
- 4
- 5
- 4、顯示或者保存圖片
savefig("exercice_2.png",dpi=72) show()
--------------------- 本文來自 搬磚小工053 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/sa14023053/article/details/51835034?utm_source=copy
