等高線圖(也稱“水平圖”)是一種在二維平面上顯示 3D 圖像的方法。等高線有時也被稱為 “Z 切片”,,如果您想要查看因變量 Z 與自變量 X,、Y 之間的函數(shù)圖像變化(即 Z=f(X,Y)),,那么采用等高線圖最為直觀。 自變量 X 和 Y 需要被限制在矩形網(wǎng)格內(nèi),,您可以將 x ,、y 數(shù)組作為參數(shù)傳遞給 numpy.meshgrid() 函數(shù)來構(gòu)建一個網(wǎng)格點矩陣。 Matplotlib API 提供了繪制等高線(contour)與填充等高線( contourf)的函數(shù),。這兩個函數(shù)都需要三個參數(shù),,分別是 X、Y 與 Z,?! ?/p> import numpy as np import matplotlib.pyplot as plt #創(chuàng)建xlist、ylist數(shù)組 xlist = np.linspace(-3.0, 3.0, 100) ylist = np.linspace(-3.0, 3.0, 100) #將上述數(shù)據(jù)變成網(wǎng)格數(shù)據(jù)形式 X, Y = np.meshgrid(xlist, ylist) #定義Z與X,Y之間的關(guān)系 Z = np.sqrt(X**2 + Y**2) fig,ax=plt.subplots(1,1) #填充等高線顏色 cp = ax.contourf(X, Y, Z) fig.colorbar(cp) # 給圖像添加顏色柱 ax.set_title('Filled Contours Plot') ax.set_xlabel('x (cm)') ax.set_ylabel('y (cm)') #畫等高線 plt.contour(X,Y,Z) plt.show()12345678910111213141516171819復(fù)制代碼類型:[python] 代碼執(zhí)行后,,輸出結(jié)果如下: 左側(cè)圖像繪制了兩個變量 X,、Y ,右側(cè)的顏色柱(colorbar)則表示 X 的取值,,顏色越深表示值越小,,中間深色部分的圓心點表示 x=0.y=0.z=0. |
|
來自: 碼農(nóng)9527 > 《Python》