国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python使用matplotlib繪制熱圖

2020-02-15 23:33:31
字體:
來源:轉載
供稿:網友

python常用的繪圖庫就是matplotlib,今天在給公司繪圖時,偶然間發現matplotlib可以繪制熱圖,并且十分簡潔,拿出來跟大家分享一下。(由于涉及到公司數據問題,這里采用隨機數生成數據進行實驗)

import randomfrom matplotlib import pyplot as pltfrom matplotlib import cmfrom matplotlib import axesfrom matplotlib.font_manager import FontPropertiesfont = FontProperties(fname='/Library/Fonts/Songti.ttc') def draw(): #定義熱圖的橫縱坐標 xLabel = ['A','B','C','D','E'] yLabel = ['1','2','3','4','5']  #準備數據階段,利用random生成二維數據(5*5) data = [] for i in range(5):  temp = []  for j in range(5):   k = random.randint(0,100)   temp.append(k)  data.append(temp)  #作圖階段 fig = plt.figure() #定義畫布為1*1個劃分,并在第1個位置上進行作圖 ax = fig.add_subplot(111) #定義橫縱坐標的刻度 ax.set_yticks(range(len(yLabel))) ax.set_yticklabels(yLabel, fontproperties=font) ax.set_xticks(range(len(xLabel))) ax.set_xticklabels(xLabel) #作圖并選擇熱圖的顏色填充風格,這里選擇hot im = ax.imshow(data, cmap=plt.cm.hot_r) #增加右側的顏色刻度條 plt.colorbar(im) #增加標題 plt.title("This is a title", fontproperties=font) #show plt.show() d = draw()

效果圖如下:

為了更清晰地看出二維數值矩陣與熱圖之間的對應關系,我們輸出二維矩陣:

[[17, 96, 11, 99, 83], [18, 17, 58, 18, 80], [87, 79, 15, 53, 4], [86, 53, 48, 36, 23], [25, 4, 94, 100, 71]]

從對應關系我們可以看出,圖像的左上角為坐標原點,第一行對應的二維矩陣中的第一行數據,以此類推。
同時我們可以看出數值越大的單元,對應熱圖中的顏色越深。其實這是一個可選項,只需要改變im = ax.imshow(data, cmap=plt.cm.hot_r)中的參數cmap為hot_r,其中_r的意思是就是按照顏色越深,數值越大,如果想數值越大,顏色越淺,只需要去掉_r,直接為hot就行。同時這個hot是熱圖配色的其中一個主題,主題色參數可選:

hot 從黑平滑過度到紅、橙色和黃色的背景色,然后到白色。 cool 包含青綠色和品紅色的陰影色。從青綠色平滑變化到品紅色。 gray 返回線性灰度色圖。 bone 具有較高的藍色成分的灰度色圖。該色圖用于對灰度圖添加電子的視圖。 white 全白的單色色圖。 spring 包含品紅和黃的陰影顏色。 summer 包含綠和黃的陰影顏色。 autumn 從紅色平滑變化到橙色,然后到黃色。 winter 包含藍和綠的陰影色。

右側的顏色刻度條colorbar也是可選的,如果不寫就不會顯示

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金门县| 汾西县| 象山县| 高清| 扶余县| 南康市| 巴彦淖尔市| 莫力| 济南市| 吉安县| 诏安县| 沙田区| 天长市| 同江市| 疏附县| 凤山县| 眉山市| 长乐市| 河池市| 呼图壁县| 宜川县| 汉寿县| 枣强县| 蓬莱市| 鲁甸县| 凤城市| 兰考县| 稻城县| 庆安县| 交口县| 遂昌县| 鹤山市| 改则县| 嘉黎县| 丘北县| 鄂尔多斯市| 玉山县| 北碚区| 金昌市| 黔西县| 洛隆县|