matplotlib.pyplot contourf
coutour([X, Y,] Z,[levels], **kwargs)
contour和contourf都是畫三維等高線圖的,不同點在於contour() 是繪制輪廓線,contourf()會填充輪廓。除非另有說明,否則兩個版本的函數是相同的。
參數: X,Y:類似數組,可選, 為Z中的坐標值, 當 X,Y,Z 都是 2 維數組時,它們的形狀必須相同。如果都是 1 維數組時,len(X)是 Z 的列數,而 len(Y) 是 Z 中的行數。(例如,經由創建numpy.meshgrid())
Z:類似矩陣, 繪制輪廓的高度值.
levels:int或類似數組,可選, 確定輪廓線/區域的數量和位置
其他參數: aalpha:float ,可選
alpha混合值,介於0(透明)和1(不透明)之間。
cmap:str或colormap ,可選
Colormap用於將數據值(浮點數)從間隔轉換為相應Colormap表示的RGBA顏色。用於將數據縮放到間隔中看 。
要畫出等高線,核心函數是plt.contourf(),但在這個函數中輸入的參數是x,y對應的網格數據以及此網格對應的高度值,因此我們調用np.meshgrid(x,y)把x,y值轉換成網格數據:

顯示的圖為:
如果想顯示熱力圖,那只要在plt.contourf()函數中添加屬性cmap=plt.cm.hot就能顯示熱力圖,其中cmap代表為color map,把color map映射成hot(熱力圖)
# 填充等高線 plt.contourf(X, Y, f(X, Y), cmap=plt.cm.hot)
顯示的圖為:
本文轉自:https://blog.csdn.net/lens___/article/details/83960810