如何使用 Seaborn 创建 Python 热图? 【综合解释】
已发表: 2021-10-06大数据时代的企业每天都被大量数据所淹没。 然而,重要的不是相关数据的绝对数量,而是如何处理这些数据。 因此,需要对大数据进行分析,以获得最终决定更好决策并影响战略业务举措的洞察力。
尽管如此,仅仅分析数据并将其留在那里是不够的。 下一步是数据可视化,以可视化格式呈现数据,以查看和理解数据中的模式、趋势和异常值。 Python 中的热图是众多数据可视化技术之一。
数据可视化是指数据的图形表示,可能包括图形、图表、地图和其他视觉元素。 它对于分析大量信息和做出数据驱动的决策至关重要。
本文将引导您了解 Python 中热图的概念以及如何使用 Seaborn 创建热图。
目录
什么是热图?
Python 中的热图是一种数据可视化技术,其中颜色表示感兴趣的值如何随其他两个变量的值变化。 它是数据的二维图形表示,其值以颜色编码,从而提供了一种简化、富有洞察力和视觉吸引力的信息视图。 下图是热图的简化表示。
通常,热图是一个数据表,其中的行和列代表不同的类别集。 表中的每个单元格都包含一个逻辑值或数值,该值根据给定的调色板确定单元格的颜色。 因此,热图使用颜色来强调数据值之间的关系,如果使用原始数字排列在常规表格中,则很难理解这些关系。
热图在多个真实场景中都有应用。 例如,考虑下面的热图。 这是一个股票指数热图,可以识别股票市场的主要趋势。 热图使用冷到热的配色方案来显示哪些股票看跌,哪些股票看涨。 前者用红色表示,而后者用绿色表示。
资源
热图可用于其他几个领域。 一些示例包括网站热图、地理热图和运动热图。 例如,您可以使用热图来了解一组城市的降雨量如何随一年中的月份而变化。 热图对于研究人类行为也非常方便。
相关热图
相关热图是一个二维矩阵,显示两个不同变量之间的相关性。 表格的行显示第一个变量的值,而第二个变量显示为列。 与常规热图一样,相关热图也带有用于读取和理解数据的颜色条。
使用的配色方案是这样的,配色方案的一端代表低价值数据点,另一端代表高价值数据点。 因此,相关热图是数据分析的理想选择,因为它们以易于阅读的形式呈现模式,同时还突出了数据的变化。
下面给出的是相关热图的经典表示。
资源
在 Python 中创建 Seaborn 热图
Seaborn 是一个用于数据可视化的 Python 库,基于 matplotlib。 它提供了一种信息丰富且具有视觉吸引力的媒介,以统计图形格式呈现数据。 在使用 seaborn 创建的热图中,调色板描绘了相关数据的变化。 如果您是初学者并且想获得数据科学方面的专业知识,请查看我们的数据科学课程。
在 Python 中创建热图的步骤
以下步骤大致介绍了如何在 Python 中创建简单的热图:
- 导入所有需要的包
- 导入您存储数据的文件
- 绘制热图
- 使用 matplotlib 显示热图
现在,让我们向您展示如何使用 seaborn 以及 matplotlib 和 pandas 来生成热图。
在这个例子中,我们将用 Python 为 30 家制药公司的股票构建一个 seaborn 热图。 生成的热图将显示股票代码及其各自的单日百分比价格变化。 我们将首先收集医药股的市场数据,并在该 CSV 文件的前两列中创建一个包含股票代码及其相应价格变化百分比的 CSV(逗号分隔值)文件。
由于我们与 30 家制药公司合作,我们将构建一个包含 6 行和 5 列的热图矩阵。 此外,我们希望热图以降序描述价格变化的百分比。 因此,我们将 CSV 文件中的股票按降序排列,并添加两列以指示每只股票在 seaborn 热图的 X 和 Y 轴上的位置。
第 1 步:导入 Python 包。
资源
第 2 步:加载数据集。
使用 pandas 的 read_csv 函数读取数据集。 此外,我们使用 print 语句来可视化前 10 行。
资源
第 3 步:创建 Python Numpy 数组。
牢记 6 x 5 矩阵,我们将为“符号”和“更改”列创建一个 n 维数组。
资源
第 4 步:在 Python 中创建数据透视表。
从给定的数据框对象“df”,数据透视函数创建一个新的派生表。 pivot 函数接受三个参数——索引、列和值。 新表的单元格的值取自“更改”列。
资源
第 5 步:创建一个数组来注释热图。
下一步是创建一个数组来注释 seaborn 热图。 为此,我们将调用数组“percentage”和“symbol”上的 flatten 方法来将 Python 列表扁平化成一行。 此外, zip 函数在 Python 中压缩列表。 我们将运行 Python for 循环并根据需要使用 format 函数来格式化股票代码和价格变化百分比值。
资源
第 6 步:创建 matplotlib 图形并定义绘图。
在这一步中,我们将创建一个空的 matplotlib 图并定义图形的大小。 此外,我们将添加绘图的标题,设置标题的字体大小,并使用 set_position 方法固定其与绘图的距离。 最后,由于我们只想显示股票代码及其对应的单日价格变化百分比,我们将隐藏 X 和 Y 轴的刻度并从图中移除轴。
资源
第 7 步:创建热图
在最后一步中,我们将使用 seaborn Python 包中的 heatmap 函数来创建热图。 seaborn Python 包的 heatmap 函数采用以下参数集:
资料:
它是一个二维数据集,可以强制转换为数组。 给定一个 Pandas DataFrame,行和列将使用索引/列信息进行标记。
注释:
它是一个与数据形状相同的数组,并对热图进行注释。
地图:
它是一个 matplotlib 对象或颜色图名称,并将数据值映射到颜色空间。
格式:
它是添加注释时使用的字符串格式化代码。
线宽:
它设置划分每个单元格的线的宽度。
资源
所选制药公司的 seaborn 热图的最终输出将如下所示:
资源
前进之路:通过 upGrad 的数据科学专业证书课程学习 Python
商业决策数据科学专业证书课程是一个为期 8 个月的严格在线课程,专注于数据科学和机器学习概念,特别强调其实际业务应用。 该计划专为希望发展数据科学的实用知识和技能的经理和工作专业人士而设计,以帮助他们做出战略性和数据驱动的业务决策。
以下是一些课程亮点:
- IIM Kozhikode 享有盛誉
- 200 多个小时的内容
- 3 个行业项目和一个顶点
- 20+现场学习课程
- 5+ 专家辅导课程
- Excel、Tableau、Python、R 和 Power BI 的覆盖范围
- 与行业导师一对一
- 360 度的职业支持
- 顶级公司的工作协助
注册 upGrad并磨练您的 Python 热图技能,以满足您所有的数据可视化需求!
结论
统计学家和数据分析师使用大量工具和技术对整理的数据进行分类,并以易于理解和用户友好的方式呈现它们。 在这方面,热图作为一种数据可视化技术已经帮助各行各业的企业更好地可视化和理解数据。
总而言之,热图已被广泛使用,并且仍然被用作首选的统计和分析工具之一。 这是因为它们提供了一种视觉上吸引人且易于访问的数据呈现模式,易于理解、通用、适应性强,并且通过在单个框架中呈现所有值来消除传统数据分析和解释过程的繁琐步骤。
你如何绘制热图?
热图是以二维图形格式绘制分组数据的标准方法。 绘制热图背后的基本思想是将图表划分为正方形或矩形,每个矩形代表数据表上的一个单元格、一个数据集和一行。 正方形或矩形根据表格中该单元格的值进行颜色编码。
热图是否显示相关性?
相关热图是描述不同变量之间相关性的相关矩阵的图形表示。 如果使用得当,相关热图非常有效,因为可以轻松识别高度相关的变量。
为什么在 Python 中使用 seaborn?
Seaborn 是一个基于 matplotlib 的开源 Python 库。 它用于探索性数据分析和可视化,并且可以轻松地与数据框和 Pandas 库一起使用。 此外,使用 seaborn 创建的图表很容易定制。