简单可视化
数据集介绍见 数分基础(01)示例数据集Global_Superstore
可直接下载
本文接上一篇 数分基础(03-1)客户特征分析
运行本篇代码之前,先运行上一篇的代码。
为了能够对比和总览三个客户群体Cluster 0 - Cluster 1 的特征,上一篇末尾使用了并排柱状图,并排单图中对比多个群体在多个特征上的差异。
1. 关于可视化
可视化并非主观设计,也不是追求形式,其本质是以最合适的方式呈现信息、辅助判断。
例如,分析销售额,先考虑的是条形图(柱状图),如果种类非常多,再考虑分布 —— 这基本是固定的思考范式,也能顺应受众的“潜意识”。
所以,可视化的逻辑框架是客观的,我们一般做的工作是在这个框架上补充和完善,不可过度追求“形式”。
2. 并排柱状图
三个群体在每个特征上的数据并排展示,便于直接对比,快速发现群体之间的特征差异。
import matplotlib.pyplot as plt
import numpy as np
# 设置 Pandas 显示浮点数格式,禁用科学计数法
pd.set_option('display.float_format', '{:.2f}'.format)
# 定义特征和群体标签
features = ['Avg Total Sales', 'Avg Total Quantity', 'Avg Total Profit', 'Avg Discount']
cluster_labels = ['Cluster 0', 'Cluster 1', 'Cluster 2']
# 将数据转为数组格式,便于绘制
values = cluster_summary[features].values.T
# 创建图表
fig, axes = plt.subplots(1, 4, figsize=(18, 5)) # 设置为一行四列的图表布局
# 为每个特征绘制并列的柱状图
colors = ['skyblue', 'lightgreen', 'salmon'] # 颜色配置
for i, ax in enumerate(axes):
ax.bar(cluster_labels, values[i], color=colors, width=0.5)
ax.set_title(