更新時間:2022年03月28日10時19分 來源:傳智教育 瀏覽次數(shù):
matplotlib內(nèi)置了眾多預(yù)定義的顏色映射表,使用這些顏色映射表可以為用戶提供更多的顏色建議,為用戶節(jié)省大量的開發(fā)時間。pyplot模塊中提供了colormaps()函數(shù)用于查看所有可用的顏色映射表,示例代碼及運行結(jié)果如下。
In [4]:plt.colormaps() out[4]: ['Accent', 'Accent_r', 'Blues', 'Blues_r', ...省略N行... 'viridis', 'viridis_r', 'winter', 'winter-r']
以上展示的顏色映射表的名稱分為有“_r”后綴和無“_r”后綴兩種,其中有“_r”后綴的顏色表相當(dāng)于同名的無“_r”后綴的反轉(zhuǎn)后的顏色表。假設(shè)顏色映射表demo包含的顏色順序為black、white、gray,那么顏色映射表demo_r的顏色順序為gray、white、black.
顏色映射表能夠表示豐富的顏色,常用映射表有autumn、bone、cool、copper、flag、gray、hot、hsv、jet、pink、prism、sprint、summer、winter。為了讓用戶合理地使用顏色映射表,顏色映射表一般可以劃分為以下3類。
·Sequential:表示同一顏色從低飽和度到高飽和度的單色顏色映射表。
·Diverging:表示顏色從中間的明亮色過渡到兩個不同顏色范圍方向的顏色映射表。
·Qualitative:表示可以輕易區(qū)分不同種類的數(shù)據(jù)的顏色映射表。
此外,開發(fā)人員可以自定義新的顏色映射表,再通過matplotlib.cm.register_cmap()函數(shù)將自定義的顏色映射表添加到matplotlib。
matplotlib主要有兩種使用顏色映射表的方式:第一種方式是在調(diào)用函數(shù)或方法繪制圖表或添加輔助元素時將顏色映射表傳遞給關(guān)鍵字參數(shù)cmap;第二種方式是直接調(diào)用set_cmap()函數(shù)進行設(shè)置。這兩種方式的具體用法如下。
(1)使用關(guān)鍵字參數(shù)cmap的示例代碼如下。
plt.scatter(x, y, c=np.random.rand(10), cmap=matplotlib.cm.jet)
(2)使用set_cmap()函數(shù)的示例代碼如下。
plt.set_cmap(matplotlib.cm.jet)