当前位置: 首页 > news >正文

seaborn绘制热图(Heatmap)

目录

  • 什么是热图?
  • sns.heatmap函数
    • 示例
  • 实战

什么是热图?

热图(HeatMap)是一种可视化方式,用于表示二维数据的矩阵,其中不同的数值通过不同颜色的方块或单元格来表示。每个单元格的颜色深浅或者色调会根据数据的值进行相应的变化,使得我们能够直观地观察数据之间的模式和关系。

在热图中,通常使用颜色渐变来表示数值的大小。常见的热图颜色映射包括灰度、彩虹色、红蓝色等。较小的值可以用深色或冷色表示,而较大的值则用浅色或暖色表示。这种颜色的分布可以使得数据的高低、趋势和相关性等特征在视觉上更易于辨别。

热图在数据分析和可视化中非常常见,它可以用于各种领域,如生物学、金融、社会科学、工程等。通过热图,我们可以更好地理解数据之间的关系和规律,发现异常值或者异常模式,并支持决策过程。

sns.heatmap函数

sns.heatmap是Seaborn库中的一个函数,用于绘制热力图。热力图是一种用颜色编码的矩形图,其中矩形的颜色根据数值的大小而变化,用于可视化矩形数据集的值。

sns.heatmap函数的基本语法如下:

sns.heatmap(data, cmap=None, annot=False, fmt='.2g', linewidths=0.5)

参数说明:

  1. data:要绘制的数据,可以是DataFrame或类似数组的数据结构。
  2. cmap:用于指定颜色映射的颜色图谱名称,例如’viridis’、‘plasma’、'coolwarm’等。
  3. annot:一个布尔值,表示是否在热力图中显示数值标签。 fmt:用于控制数值标签格式的字符串格式。
  4. linewidths:用于指定单元格之间的间隔线的宽度。

示例

import seaborn as sns
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt# 创建一个包含随机数据的DataFrame
data = pd.DataFrame(np.random.rand(4, 4), columns=['A', 'B', 'C', 'D'])# 绘制热力图
sns.heatmap(data, annot=True, cmap='YlGnBu', fmt='.2f', linewidths=0.5)
plt.show()

在这里插入图片描述

实战

# 导入第三方模块
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np 
import seaborn as snsplt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False    # 用来显示负号# 读取数据
Sales = pd.read_excel(r'Sales.xlsx')# 根据交易日期,衍生出年份和月份字段
Sales['year'] = Sales.Date.dt.year
Sales['month'] = Sales.Date.dt.month
# 统计每年各月份的销售总额
Summary = Sales.pivot_table(index = 'month', columns = 'year', values = 'Sales', aggfunc = np.sum)# 绘制热力图
sns.heatmap(data = Summary, # 指定绘图数据cmap = 'PuBuGn', # 指定填充色linewidths = .1, # 设置每个单元格边框的宽度annot = True, # 显示数值fmt = '.1e' # 以科学计算法显示数据)
#添加标题
plt.title('每年各月份销售总额热力图')
# 显示图形
plt.show()

在这里插入图片描述


http://www.mrgr.cn/news/66161.html

相关文章:

  • 借助淘宝 API 接口,轻松掌握商品类目信息
  • Linux系统性能调优技巧详解
  • DPDK 简易应用开发之路 6:流规则配置与多队列数据包处理
  • 微信公众号推送
  • 鸿蒙进阶-AlphabetIndexer组件
  • 完全背包(动态规划):DFS->记忆化搜索->倒序动态规划->循序动态规划->二维->一维
  • SOLIDWORKS 2025工程图功能增强
  • 网络学习/复习4传输层
  • 7步战略采购流程:提升采购效率与效果
  • Linux 服务器使用指南:从入门到登录
  • IntelliJ IDEA的快捷键不生效
  • React 前端使用 Input 输入框的样式上传一个 Excel 文件并读取内容对象数组
  • 跳蚤市场之商品发布功能
  • 鉴源实验室·测试设计方法-正交实验法
  • 关于大模型微调与训练的问题,大模型训练的难点在哪里?
  • 海报在线制作系统
  • 全面解析:区块链技术及其应用
  • 光控资本:两大行业迎来利好,新能源和工业硅行业受益股票盘点!
  • 武林苍穹,巅峰鏖战
  • 安卓内核内存回收
  • 【Linux】网络编程:应用层协议—HTTP协议
  • 探索儿童自闭症康复的新方法,让你惊叹不已!
  • 多种msvcp110.dll丢失修复的步骤教程,一步步教你修复丢失msvcp110.dll方法
  • 如何连接邻居家的wifi
  • 小语言模型介绍与LLM的比较
  • AI 大模型如何重塑软件开发