本文的文字及圖片來源于網路,僅供學習、交流使用,不具有任何商業用途,著作權歸原作者所有,如有問題請及時聯系我們以作處理,
前言
用函式以及相關引數決議
seaborn.heatmap(
data,
vmin=None, vmax=None,
cmap=None,
center=None,
robust=False,
annot=None,
fmt=’.2g’,
annot_kws=None,l
inewidths=0,
linecolor=’white’,
cbar=True,
cbar_kws=None,
cbar_ax=None,
square=False,
xticklabels=’auto’, yticklabels=’auto’,
mask=None,
ax=None,
**kwargs)
vmin=None,vmax=None, # 分別是熱力圖的顏色取值最大和最小范圍,默認是根據data資料表里的取值確定
cmap=None, # 設定顏色
center=None,# 資料表取值有差異時,設定熱力圖的色彩中心對齊值;通過設定center值,可以調整生成的影像顏色的整體深淺;設定center資料時,如果有資料溢位,則手動設定的vmax、vmin會自動改變
robust=False, #默認取值False;如果是False,且沒設定vmin和vmax的值,熱力圖的顏色映射范圍根據具有魯棒性的分位數設定,而不是用極值設定
annot=None, #默認取值False;如果是True,在熱力圖每個方格寫入資料;如果是矩陣,在熱力圖每個方格寫入該矩陣對應位置資料
fmt=’.2g’, #字串格式代碼,矩陣上標識數字的資料格式,比如保留小數點后幾位數字
annot_kws=None,# annot為True時,設定顯示數字的顏色、大小、位置等,
linewidths=0, #定義熱力圖里“表示兩兩特征關系的矩陣小塊”之間的間隔大小
linecolor=’white’, #切分熱力圖上每個矩陣小塊的線的顏色,默認值是’white’
cbar=True, #是否在熱力圖側邊繪制顏色刻度條,默認值是True
cbar_kws=None, #熱力圖側邊繪制顏色刻度條時,相關字體設定,默認值是None
cbar_ax=None, #熱力圖側邊繪制顏色刻度條時,刻度條位置設定,默認值是None
square=False, #設定熱力圖矩陣小塊形狀,默認值是False
xticklabels=’auto’, yticklabels=’auto’, #控制每列/行標簽名的輸出
mask=None, #覆寫某些資料
ax=None, #設定作圖的坐標軸,一般畫多個子圖時需要修改不同的子圖的該值
實操部分
1、載入相關庫
df = pd.DataFrame(np.random.uniform(-1, 1, size=(5, 5)))
2、生成隨機DataFrame(array也可以,不過我更喜歡用DataFrame)
df = pd.DataFrame(np.random.uniform(-1, 1, size=(5, 5)))
3、默認引數畫熱力圖
sns.heatmap(df)
4、改變圖形顏色
sns.heatmap(df,cmap='Blues')
5、改變顏色取值范圍(與圖1對比)
因為資料范圍是-1到1,所以增大顏色取值范圍,圖表呈現的顏色會很相近,
sns.heatmap(df,vmax=5,vmin=-5) #
6、設定熱力圖的色彩中心對齊值
sns.heatmap(df,center=-0.8)
7、往格子里寫入資料,并設定字體、顏色等
sns.heatmap(df, annot=True, annot_kws={'size':8,'weight':'bold', 'color':'blue'})
8、設定數字顯示保留幾位小數點
sns.heatmap(df,annot=True,fmt='.1f') #這里設定保留一位小數點
9、用mask覆寫某些資料
sns.heatmap(df, annot=True, mask = df<0) # 覆寫小于0的資料
10、制相關系數矩陣時,可以按下面代碼繪制一半
mask = np.zeros_like(df) # 設定0矩陣 mask[np.triu_indices_from(mask)] = True #把矩陣上部分設定為1 #mask[np.tril_indices_from(mask)] = True #把矩陣下部分設定為1 #設定為1 的單元格將不再顯示 with sns.axes_style("white"): ax = sns.heatmap(df, mask=mask)
11、設定畫布大小,解析度,并保存圖片
lt.subplots(figsize = (5,5),dpi=150) # 用mask覆寫某些資料 sns.heatmap(df,annot=True) # 覆寫小于0的資料 # 保存圖片 plt.savefig("熱力圖.png")
以上文章來源于php中文網,作者 零到壹度
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/161756.html
標籤:Python
上一篇:一文掌握Python面向物件
