当前位置:首页>python>python数据可视化技巧的100个练习 -- 5. 相关性矩阵的热力图

python数据可视化技巧的100个练习 -- 5. 相关性矩阵的热力图

  • 2026-10-11 05:42:21
python数据可视化技巧的100个练习 -- 5. 相关性矩阵的热力图

重要性★★★★☆

难度★★★☆☆

你是一家零售公司的数据分析师,公司提供了一个包含各种销售指标的数据集。你的任务是创建一个相关性矩阵的热力图,以识别不同指标之间的关系。这将帮助公司了解哪些指标密切相关,并且可以相互影响。

生成一个包含至少五个不同销售指标的样本数据集,并使用 Python 创建相关性矩阵的热力图。热力图应清楚显示各指标之间的相关性值。

使用以下代码生成样本数据集:

【数据生成代码示例】

import pandas as pdimport numpy as npnp.random.seed(0)data = pd.DataFrame({    'Sales': np.random.rand(100) * 1000,    'Profit': np.random.rand(100) * 500,    'Discount': np.random.rand(100) * 50,    'Customer_Age': np.random.randint(18, 70, size=100),    'Customer_Satisfaction': np.random.randint(1, 10, size=100)})

【图表答案】

【代码答案】

import pandas as pdimport numpy as npimport seaborn as snsimport matplotlib.pyplot as pltnp.random.seed(0)data = pd.DataFrame({    'Sales': np.random.rand(100) * 1000,    'Profit': np.random.rand(100) * 500,    'Discount': np.random.rand(100) * 50,    'Customer_Age': np.random.randint(18, 70, size=100),    'Customer_Satisfaction': np.random.randint(1, 10, size=100)})correlation_matrix = data.corr()sns.heatmap(correlation_matrix, annot=True, cmap='coolwarm')plt.title('相关性矩阵的热力图')plt.show()

要创建相关性矩阵的热力图,请按照以下步骤操作:

导入必要的库:你需要 pandas 用于数据处理,numpy 用于数值运算,seaborn 用于创建热力图,matplotlib 用于显示图表。

生成样本数据集:数据集包括五个指标:“Sales”(销售额)、“Profit”(利润)、“Discount”(折扣)、“Customer_Age”(客户年龄)和“Customer_Satisfaction”(客户满意度)。使用 numpy 为每个指标生成随机值。

计算相关性矩阵:使用 pandas 的 corr() 方法计算数据集的相关性矩阵。该矩阵显示了每对指标之间的相关系数。

创建热力图:使用 seaborn 的 heatmap() 函数创建热力图。annot=True 参数将相关性值添加到热力图的单元格中,cmap='coolwarm' 设置了颜色方案。

显示热力图:使用 matplotlib 的 show() 函数显示热力图。使用 plt.title() 设置标题。

这个过程有助于可视化不同指标之间的关系,便于识别哪些指标呈正相关或负相关。

【小知识】

相关系数:相关系数的范围是 -1 到 1。接近 1 的值表示强正相关,接近 -1 的值表示强负相关,接近 0 的值表示无相关性。

热力图颜色方案:热力图中使用的颜色方案对其可读性有很大影响。常见的方案包括“coolwarm”、“viridis”和“plasma”。每种方案都有其优势,具体取决于数据分布和受众偏好。

Seaborn 库:Seaborn 基于 Matplotlib 构建,提供了一个高级接口,用于绘制吸引人且信息丰富的统计图形。它特别适用于可视化复杂的数据集。

最新文章

随机文章