seaborn---画热力图

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 : 要显示的数据

ax = sns.heatmap(data)

vmin, vmax : 显示的数据值的最大和最小的范围

ax = sns.heatmap(data,vmin=0, vmax=1)

cmap : matplotlib颜色表名称或对象,或颜色列表,可选从数据值到色彩空间的映射。如果没有提供,默认设置

ax = sns.heatmap(data,vmin=0, vmax=1, cmap = 'GnBu')

center : 指定色彩的中心值

ax = sns.heatmap(data,vmin=0, vmax=1, cmap = 'GnBu', center=0.7)

robust : 如果“Ture”和“ vmin或” vmax不存在,则使用强分位数计算颜色映射范围,而不是极值。

ax = sns.heatmap(data,vmin=0, vmax=1, cmap = 'GnBu', center=0.5, 
                 robust=False) #Set1

annot : 如果为True,则将数据值写入每个单元格中

ax = sns.heatmap(data,vmin=0, vmax=1, cmap = 'GnBu', center=0.5, 
                 robust=False,annot=True) #Set1

fmt : 表格里显示数据的类型

fmt ='.0%'#显示百分比
fmt ='f' 显示完整数字 = fmt ='g'
fmt ='.3'显示小数的位数 = fmt ='.3f' = fmt ='.3g'

annot_kws : 未知:

linewidths : 划分每个单元格的线的宽度。
linecolor : 划分每个单元格的线的颜色。
cbar : 是否绘制颜色条:colorbar,默认绘制
cbar_kws : 未知 cbar_ax : 显示x-y坐标,而不是节点的编号
square : 为‘True’时,整个网格为一个正方形
xticklabels, yticklabels : 可以以字符串进行命名,也可以调节编号的间隔,也可以不显示坐标

ax = sns.heatmap(uniform_data,cmap = 'RdBu', center=0,cbar = True, square = False,xticklabels =['12','22'])#字符串命名
ax = sns.heatmap(uniform_data,cmap = 'RdBu', center=0,cbar = True, square = False,xticklabels =2)#编号间隔为2
ax = sns.heatmap(uniform_data,cmap = 'RdBu', center=0,cbar = True, square = False,xticklabels =False)#不显示坐标

  

3.举例:

plt.figure(figsize = (12,6))
corr_values = data.corr()
sns.heatmap(corr_values, annot=True,vmax=1, square=True, cmap="Blues",fmt='.2f')
plt.tight_layout()
plt.savefig('heatmap.png',dpi=600) 
plt.show()

  

 

 

 

 

 

 

参考文献:

【1】python3.x-seaborn.heatmap随笔

上一篇:K近邻 (KNN)算法的原理及优缺点


下一篇:Matplotlib-画图种类