目录
常规绘图方法
首先导入工具包,一般用plt来当作Matplotlib的别名:
import matplotlib.pyplot as plt
%matplotlib inline
指定魔法指令之后,在Notebook中只需要执行画图操作就可以在界面进行展示,先来画一个简单的折线图,只需要把二维数据点对应好即可:
plt.plot([1,2,3,4,5],[1,4,9,16,25])
plt.xlabel('xlabel',fontsize=16)
plt.ylabel('ylabel')
给定横坐标[1,2,3,4,5],纵坐标[1,4,9,16,25],并且指明x轴与y轴的名称分别为xlabel和ylabel。
细节设置
在plot()函数中可以设置很多细节参数,例如线条的种类。
不仅可以改变线条的形状,也可以自己定义颜色。
首先构造一组数据,然后选择不同的线条类型和颜色来观察一下输出效果:
plt.plot([1,2,3,4,5],[1,4,9,16,25],'-.')
plt.xlabel('xlabel',fontsize=16) #fontsize表示字体的大小
plt.ylabel('ylabel',fontsize=16)
plt.plot([1,2,3,4,5],[1,4,9,16,25],'-.',color='r')
还可以多次调用plot()函数来加入多次绘图的结果,其中颜色和线条参数也可以写在一起,例如,“r- -”表示红色的虚线:
tang_array=np.arange(0,10,0.5)
plt.plot(tang_array,tang_array,'r--')
plt.plot(tang_array,tang_array**2,'bs')
plt.plot(tang_array,tang_array**3,'go')
在用matplotlib绘图中,基本上你能想到的特征都有相应的控制参数,例如线条宽度、形状、大小 等:
x=np.linspace(-10,10)
y=np.sin(x)
plt.plot(x,y,linewidth=3.0) # 设置线条宽度
plt.plot(x,y,color='b',linestyle=':',marker='o',markerfacecolor='r',markersize=10)
line=plt.plot(x,y)
plt.setp(line,color='r',linewidth=2.0,alpha=0.4) #alpha表示透明程度
子图和标注
所谓子图就是指一整幅图形中包含几个单独的小图,这些子图可以按照行或者列的形式排列
plt.subplot(211)
plt.plot(x,y,color='r')
plt.subplot(212)
plt.plot(x,y,color='b')
subplot(211)表示要画的图整体是2行1列的,一共包括两幅子图,最后的1表示当前绘制顺序是第一幅子图。subplot(212)表示还是这个整体,只是在顺序上要画第2个位置上的子图。
上图就是2行1列的子图绘制结果,整体表现为竖着排列,如果想横着排列,那就是1行2列了:
plt.subplot(121)
plt.plot(x,y,color='r')
plt.subplot(122)
plt.plot(x,y,color='b')
不仅可以创建一行或者一列,还可以创建多行多列,指定好整体规模,然后在对应位置画各个子图 就可以了,如果在当前子图位置没有执行绘图操作,该位置子图也会空出来:
plt.subplot(321)
plt.plot(x,y,color='r')
plt.subplot(324)
plt.p