matplotlib绘图(1)
博客地址:http://blog.csdn.net/ikerpeng/article/details/20370041
matplotlib是python另一个非常重要的工具包。使用它可以绘制精美的图表。它学起来也是非常容易。下面来一步一步的学习它。
1,matplotlib是面向对象的,组成的各个元素都是对象。使用pyplot模块可以迅速的绘图。下面这个例子可以基本上让你学会绘图了。
1 import numpy as np
2 import matplotlib.pyplot as plt
3
4 x=np.linspace(0,10,1000)
5 y=np.sin(x)
6 z=np.cos(x**2)
7
8 plt.figure(figsize=(8,4))
9
10
11 plt.plot(x,y,label=‘$sin(x)$‘,color=‘red‘,linewidth=2)
12
13 plt.plot(x,z,‘g--‘,label=‘$cos(x^2)$‘,lw=3)
14
15 plt.xlabel(‘Time(s)‘)
16 plt.ylabel(‘volt‘)
17 plt.title(‘First python firgure‘)
18 plt.ylim(-1.2,1.2)
19 plt.legend()
20
21 plt.show()
~
1-6行是在前面已经学习过的了;8行表示绘制一个图,大小为8*4(默认值是每个单位80像素);11,13行表示:绘制x和y,x和z的函数图像。前者标签是sin(x),颜色是红色,线的粗细为2(默认为1);后者的颜色是绿色(g代表的绿色),线条的样式是‘--’,标签是cos(x^2),线条的粗细为3(linewidth可简写为lw)。这个标签会通过19行代码显示在一个旁边的小矩形里面。图像如图所示:
通过这个例子已经基本上学会了plot绘图了。
2,绘制多个子图使用subplot(a,b,c)命令,里面有三个参数,分别代表每一行,每一列的子图的个数和当前子图的编号。当这三个参数都小于10的时候可以省略其中的‘,‘。
我们还是从一个例子开始:
1 import matplotlib.pyplot as plt 2 for idx,color in enumerate(‘rgbyck‘): 3 plt.subplot(321+idx,axisbg=color) 4 plt.show()
如果下画出如下所示的图像:
输入如下代码便可以。
>>> import matplotlib.pyplot as plt >>> plt.subplot(221) >>> plt.subplot(222) >>> plt.subplot(212) >>> plt.show()