欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python使用seaborn绘制热力图

程序员文章站 2022-05-19 15:42:54
...

最近写论文,需要把特征图以热图的形式展示出来,因此写下这篇笔记:

需要用到的库为seaborn

具体代码如下:

import seanborn as sns
sns.set()
# 注意: your_data只能是二维矩阵,特征图为多通道时可以使用mean函数取通道上的平均。
ax = sns.heatmap(your_data, cmap="rainbow", xticklabels=False, yticklabels=False, cbar=True)
b = ax.get_figure()
b.savefig(your_save_path)

seaborn库是一个可视化数据的库,heatmap是该库中的一个用来绘制热力图的函数。

heatmap()函数中有很多参数,可以根据自己的绘图需要进行选择,以下是该函数的完整参数。

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)

下面对常用参数进行说明解释:

  • data:
二维矩阵
  • vmin和vmax:
最大值和最小值用来界定颜色的映射范围
  • cmap:
颜色的种类,有很多种颜色可供选择,但是一般选用“rainbow”,更多颜色参数参见 cmap颜色参数
  • center
绘制有色数据时将色彩映射居中的值。 如果没有指定,则使用此参数将更改默认的 cmap
  • cbar
布尔值,选择是否绘制颜色条

xticklabels, yticklabels:

如果为True,则绘制数据框的列名称。如果为False,则不绘制列名称。如果是列表,则将这些替代标签绘制为xticklabels。如果是整数,则使用列名称,但仅绘制每个n标签。如果是“auto”,将尝试密集绘制不重叠的标签。

更详细的说明和使用方法参见seaborn.heatmap()官方中文文档

上一篇: 工具类

下一篇: 工具类