python的matplotlib包支持我们画图,有点非常多,现学习如下。
首先要导入包,在以后的示例中默认已经导入这两个包
import matplotlib.pyplot as plt
import numpy as np
然后画一个最基本的图
t = np.arange(0.0, 2.0, 0.01)#x轴上的点,0到2之间以0.01为间隔
s = np.sin(2*np.pi*t)#y轴为正弦
plt.plot(t, s)#画图
plt.xlabel('time (s)')#x轴标签
plt.ylabel('voltage (mV)')#y轴标签
plt.title('About as simple as it gets, folks')#图的标签
plt.grid(True)#产生网格
plt.savefig("test.png")#保存图像
plt.show()#显示图像
这是在一个窗口中画单张图的过程,那么如何画多张图呢?画图的过程相同,无非是画多张,然后设定位置。
x1 = np.linspace(0.0, 5.0)#画图一
x2 = np.linspace(0.0, 2.0)#画图二
y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)
y2 = np.cos(2 * np.pi * x2)
plt.subplot(2, 1, 1)#面板设置成2行1列,并取第一个(顺时针编号)
plt.plot(x1, y1, 'yo-')#画图,染色
plt.title('A tale of 2 subplots')
plt.ylabel('Damped oscillation')
plt.subplot(2, 1, 2)#面板设置成2行1列,并取第二个(顺时针编号)
plt.plot(x2, y2, 'r.-')#画图,染色
plt.xlabel('time (s)')
plt.ylabel('Undamped')
plt.show()
两张图的示例如下