contour和contourf都是畫三維等高線圖的,不同點在於contourf會對等高線間的區域進行填充,區別如下:
- import numpy as np
- import matplotlib.pyplot as plt
- from matplotlib.colors import ListedColormap
- x=np.array([1,2])
- y=np.array([1,2])
- z=np.array([[1,2],[2,3]])
- plt.xlim(1,2)
- plt.ylim(1,2)
- colors = ('red', 'blue', 'lightgreen', 'gray', 'cyan')
- cmap = ListedColormap(colors[:len(np.unique(z))])
- plt.contourf(x,y,z,cmap=cmap) ###
- plt.show()
- import numpy as np
- import matplotlib.pyplot as plt
- from matplotlib.colors import ListedColormap
- x=np.array([1,2])
- y=np.array([1,2])
- z=np.array([[1,2],[2,3]])
- plt.xlim(1,2)
- plt.ylim(1,2)
- colors = ('red', 'blue', 'lightgreen', 'gray', 'cyan')
- cmap = ListedColormap(colors[:len(np.unique(z))])
- plt.contour(x,y,z,cmap=cmap) ###
- plt.show()
無論contour還是contourf,都是繪制三維圖,其中前兩個參數x和y為兩個等長一維數組,第三個參數z為二維數組(表示平面點xi,yi映射的函數值)。
正是由於contourf可以填充等高線之間的空隙顏色,呈現出區域的分划狀,所以很多分類機器學習模型的可視化常會借助其展現。