系統(tǒng):Windows 7
語言版本:Anaconda3-4.3.0.1-Windows-x86_64
編輯器:pycharm-community-2016.3.2
- 這個系列講講Python的科學計算版塊
- 今天講講seaborn模塊:熱力圖
Part 1:示例
- 已知
df_1
,有4列["p1", "p2", "p3", "p4"]
- 根據(jù)這4列做熱力圖,結(jié)果如下圖
熱力圖
Part 2:代碼
import pandas as pd
import seaborn as sns
from matplotlib import pyplot as plt
dict_1 = {
"p1": [0.5, 0.8, 1.0, 1.2, 1.5, 2.5, 0.9, 0.6, 1.3, 1.0,
1.3, 1.6, 1.9, 2.5, 4.2, 3.5, 2.2, 1.2, 1.5, 0.5],
"p2": [1.3, 2.8, 1.3, 1.4, 6.5, 2.5, 0.9, 0.6, 1.3, 1.0,
1.3, 1.6, 1.9, 2.5, 4.2, 3.5, 1.2, 1.2, 3.5, 2.5],
"p3": [2.5, 0.8, 1.3, 1.2, 1.5, 2.8, 1.9, 0.6, 1.3, 1.1,
1.3, 1.6, 1.1, 2.5, 4.2, 3.9, 2.2, 1.2, 1.5, 0.5],
"p4": [2.5, 0.8, 1.3, 1.2, 1.5, 3.8, 1.9, 0.6, 1.3, 1.1,
1.3, 1.6, 1.1, 2.5, 4.2, 3.9, 2.2, 1.2, 1.5, 0.5]}
df_1 = pd.DataFrame(dict_1, columns=["p1", "p2", "p3", "p4"])
print(df_1)
sns.set(style="ticks", color_codes=True)
sns.heatmap(df_1, linewidths=0.05, linecolor='yellow', vmin=0, vmax=5, annot=True)
plt.show()
代碼截圖
df_1
Part 3:部分代碼解讀
-
sns.heatmap(df_1, linewidths=0.05, linecolor='yellow', vmin=0, vmax=5, annot=True)
-
linewidths
設置每個單元格的線寬 -
linecolor
設置單元格的線框的顏色 -
vmin=0, vmax=5
設置顏色區(qū)間的最小最大值 -
annot=True
在每個單元格中顯示具體的數(shù)值
-
- 如果對于生成的熱力圖顏色不是很喜歡葱她,可以更改,通過增加一個新參數(shù)
cmap
,該參數(shù)取值不同時鸦列,顏色地圖也不同sns.heatmap(df_1, linewidths=0.05, linecolor='yellow', vmin=0, vmax=5, annot=True, cmap="hot_r")
cmap="hot_r"效果圖
cmap="YlGnBu"效果圖
本文為原創(chuàng)作品,歡迎分享朋友圈
長按圖片識別二維碼鹏倘,關(guān)注本公眾號
Python 優(yōu)雅 帥氣