Python畫圖初體驗----曲面圖和等高線圖
阿新 • • 發佈:2019-02-14
import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D fig = plt.figure() ax = Axes3D(fig) #生成一個3d物件 X = np.arange(-4, 4, 0.25) Y = np.arange(-4, 4, 0.25) X, Y = np.meshgrid(X, Y) #對X,Y陣列進行擴充 R = np.sqrt(X**2+Y**2) Z = np.sin(R) ax.set_xlabel('X label',color='r') #設定x座標 ax.set_ylabel('Y label',color='r') ax.set_zlabel('Z label') ax.plot_surface(X, Y, Z,rstride=1,cstride=1,cmap=plt.cm.hot)#生成一個曲面 #ax.contourf(X,Y,Z,offset=2,alpha=0.75,cmap=plt.cm.hot)#為等高線填充顏色 ax.contour(X, Y, Z, offset=-2, colors='black')#生成等高線 offset引數是等高線所處的位置 fig=plt.figure() bx=fig.add_subplot(111)#再生成一個字圖 C=bx.contour(X,Y,Z) #如果想要在等高線上標出相應的值,需要重新生成一個物件,不能是3d物件 bx.clabel(C,inline=True,fontsize=10) #在等高線上標出對應的z值 ax.set_zlim(-2,2)#設定z的範圍 plt.show()