matplotlib繪圖基礎

 sin函數繪圖示例:python

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.widgets import Cursor

#np.arange()的用法,與range()的區別
#他們的用法相同,返回的對象類型不一樣
#range(5) 返回的是一個list: [0,1,2,3,4]
#arange(5) 返回的是一個array: array([0,1,2,3,4])
#接收三個參數時,分別表示起點、終點、間隔
t = np.arange(0.0, 2.0, 0.01)
#對t中的每一個值求sin值
s1 = np.sin(2 * np.pi * t)
#plot意爲以圖表畫出,兩個參數分別表示x/y軸的值
plt.plot(t, s1)
#將光標放在圖片上時,顯示以光標爲原點的十字軸
cursor = Cursor(plt.gca(), horizOn=True, color='r', lw=1)
plt.show()

matplotlib.pyplot子庫函數

import matplotlib.pyplot as plt

#可接收一個list做爲參數,以list下標爲x軸值,繪出一條直線
plt.plot([1,2,3,4])
#也可接收兩個list做爲參數,分別表示xy軸,繪出一條折線
plt.plot([1,2,3],[1,4,9])
#畫散點圖,加ro參數
plt.plot([1,2,3],[1,4,9],'ro')
#同時畫多個函數,第三個參數表示線的顏色,形狀等屬性
t = np.arange(0., 5., 0.2)
plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')

#指定座標軸的範圍參數:[xmin,xmax,ymin,ymax]
plt.axis([1,3,1,9])

#給x軸y軸加註釋
plt.xlabel('x')
plt.ylabel('y')

#多個圖像
plt.figure(1)#此行可省略,默認會建立figure(1),一個figure表示一個窗口
plt.subplot(211)#先指明要在哪一個子圖上畫圖,而後再使用plot畫圖
plt.plot()
plt.subplot(212)#21分別表示子圖的數目,和列數,肯定多個圖像在窗口如何排列,第三個2指明第幾個圖




#其餘方法
plt.setp()
plt.fignum()
plt.clf()
plt.cla()
plt.title()
plt.text()
plt.grid()
plt.

一個窗口繪製兩個圖:code

import numpy as np
import matplotlib.pyplot as plt
def f(t):
  return np.exp(-t) * np.cos(2*np.pi*t)
t1 = np.arange(0.0, 5.0, 0.1)
t2 = np.arange(0.0, 5.0, 0.02)
plt.figure(1)
plt.subplot(221)
plt.plot(t1, f(t1), 'bo', t2, f(t2), 'k')
plt.subplot(222)
plt.plot(t2, np.cos(2*np.pi*t2), 'r--')
plt.show()

matplotlib依賴Python GUI庫,matplotlib支持常見的Python GUI庫有Tkinter,wxPython,Jython等;對象

能夠在C:\Python27\Lib\site-packages\matplotlib\mpl-data\matplotlibrc文件中配置,配置的方法是修改backend      : TkAgg的值。圖片

問題:執行matplotlib繪圖程序時,有時會出現一閃而過的狀況get

相關文章
相關標籤/搜索