Matplotlib之contuor等高线图
画出类似于下图的等高线图: 代码如下: import matplotlib.pyplot as plt from numpy import * n=256 x=linspace(-3,3,n) y=linspace(-3,3,n) X,Y=meshgrid(x,y) Z=(1-X/2+X**5+Y**3)*exp(-X**2-Y**2) #等高线填充 plt.contourf(X,Y,Z,8,alpha=0.75,cmap=plt.cm.hot) #添加等高线 C=plt.contour(X,Y,Z,8,colors='black',linewidths=0.3) #添加label plt.clabel(C,inline='True',fontsize=10) plt.xticks(()) plt.yticks(()) plt.show() 代码解释: X,Y=meshgrid(x,y)函数的返回值是二维网格坐标。 X是一个矩阵,其中的每一行数据都是x(数组x相当于是一个行向量),X是由length(y)行x组成的。同样Y这个矩阵的每一列都是y(数组y相当于是一个列向量),Y是由length(x)列y组成的。所以说X和Y是相似矩阵。 例子: >>> x=[1,2] >>> y=[1,2,3,4] >>> X,Y=meshgrid(x,y) >>> X array([[1, 2],