绘制热力图
1 基本使用方法
seaborn.heatmap(
data,
*,
vmin=None,
vmax=None,
cmap=None,
center=None,
robust=False,
annot=None,
fmt='.2g',
annot_kws=None,
linewidths=0,
linecolor='white',
cbar=True,
cbar_kws=None,
cbar_ax=None,
square=False,
xticklabels='auto',
yticklabels='auto',
mask=None,
ax=None,
**kwargs)
2 主要参数
data | 矩形数据(eg,ndarray) |
vim,vmax | 颜色映射的最大最小值 如果没有指定,那么将从数据和其他关键字参数中推断出来 |
cmap | 颜色映射
|
center | 在绘制离散数据时,居中的颜色映射对应哪个值 |
robust | 如果为True,且vmin或vmax不存在,则使用鲁棒分位数而不是极值来计算颜色映射范围 |
annot |
|
xticklabels yticklabels | x轴y轴标签名称 |
linewidths | 划分每个单元格的线的宽度 |
linecolor | 划分每个单元格的线的颜色 |
cbar | 是否绘制颜色条 |
cbar_axmatplotlib | 用于绘制颜色条的Axes,否则从主Axes中占用空间 |
square | 如果为True,则将Axes的纵横比设置为“equal”,以使每个单元格成为正方形 |
mask | 布尔数组 如果传递了该参数,则在mask为True的单元格中不显示数据。具有缺失值的单元格将自动被屏蔽 |
3 举例
3.0 数据集
import seaborn as sns
glue = sns.load_dataset("glue").pivot("Model", "Task", "Score")
glue
3.1 基本绘图
3.1.1 DataFrame
sns.heatmap(glue)
3.1.2 ndarray
sns.heatmap(glue.values)
3.2 cmap
sns.heatmap(glue,cmap='Greens')
3.3 xticklabels
sns.heatmap(glue.values,xticklabels=['a','s','d','f','g','h','j'])
3.4 annot
sns.heatmap(glue,annot=True)
3.5 linewidths
sns.heatmap(glue,linewidths=10)
3.6 linecolor
sns.heatmap(glue,linecolor='green',linewidths=5)