(1)plt.show()函数
默认情况下,matplotlib.pyplot不会直接显示图像,只有调用plt.show()函数时,图像才会显示出来。
plt.show()默认是在新窗口打开一幅图像,并且提供了对图像进行操作的按钮。
不过在ipython命令行中,我们可以将它插入notebook中,并且不需要调用plt.show()也可以显示:
%matplotlib notebook
%matplotlib inline
不过在实际写程序中,我们还是习惯调用plt.show()函数将图像显示出来。
(2)plt.plot()函数
例子:绘制线型图
plt.plot([1,2,3,4])
plt.ylabel("y"),给Y轴名称赋值。
plt.xlabel("x轴"),给X轴名称赋值。(注意:中文可能显示会乱码)
基本用法
plot函数基本用法,指定x和y,plt.plot(x,y)
默认参数,x为0~N-1
plt.plot(y)
因此,在上面的例子中,我们没有给定X的值,所以默认值为[0,1,2,3]
传入x和y:plt.plot([1,2,3,4],[1,4,9,16]),会直接生成图像,也可以直接plt.show(),相当于打印图像处理出来了。
字符参数
表示颜色的字符参数有:
"b",蓝色,blue
"g",绿色,green
"r",红色,red
"c",青色,cyan
"m",品红,magenta
"y",黄色,yellow
"k",黑色,black
"w",白色,white
表示类型的字符参数有:
"-",实线
"--",虚线
"-.",虚点线
":",点线
".",点
",",像素点
"o",圆点
"v",下三角点
"^",上三角点
"<",朝左三角形
">",朝右三角形
"1",下三叉点
"2",上三叉点
"3",左三叉点
"4",右三叉点
"s",正方形
"p",五角点
"*",星形点
"h",六边形点1
"H",六边形点2
"+",加号点
"x",乘号点
"D",钻石形/菱形
"d",小版钻石形/菱形
"_",横线点
"|",垂直线型
例如,我们要画出红色圆点:
plt.plot([1,2,3,4],[1,4,9,16],"ro")
plt.axis([0,6,0,20]),指定坐标轴显示范围plt.axis([xmin,xmax,ymin,ymax]),和MATLAB类似。
plt.show()
传入Numpy数组,在一个图里面画多条线。
t=np.arange(0.,5.,0.2)
plt.plot(t,t,"r--",t,t**2,"bs",t,t**3,"g*")
plt.show()
线条属性
x=np.linspace(-np.pi,np.pi)
y=np.sin(x)
plt.plot(x,y,linewidth=4.0,color="r"),这个参数是设置线条宽度、颜色。
plt.show()
使用plt.plot()的返回值来设置线条属性
plot函数返回一个Line2D对象组成的列表,每个对象代表输入的一堆组合,例如:
line1,line2=plt.plot(x1,y1,x2,y2)
返回3个Line2D对象组成的列表
lines=plt.plot(x1,y1,x2,y2,x3,y3)
我们可以使用这个返回值来对线条属性进行设置:
line1,line2=plt.plot(x,y,"r-",x,y+1,"g-")
line1.set_antialiased(False),抗锯齿功能(不光滑)
plt.show()
plt.setp()修改线条性质
line-plt.plot(x,y)
plt.setp(line,color="g",linewidth=4)
子图的绘制
figure()函数会产生一个指定编号为num的图:
plt.figure(num)
使用suplot可以在一幅图中生成多个子图。
plt.subplot(numrows,numcols,fignum)
当行列小于10,中间逗号可以省略。plt.subplot(211)等价于plt.subplot(2,1,1)
def f(t):