DeepSeek+Matplotlib实战:5分钟搞定动态销售数据可视化(附完整代码)
在数据驱动的商业决策中,销售数据的可视化呈现一直是业务分析和汇报的核心环节。传统的数据可视化流程往往需要经历数据清洗、代码编写、图表调试等多个繁琐步骤,对于非技术背景的业务人员尤其不友好。而如今,借助DeepSeek与Matplotlib的强强联合,即使是零编程基础的用户也能在5分钟内完成专业级的动态销售数据可视化。
1. 环境准备与数据导入
在开始之前,我们需要确保Python环境中已安装必要的库。打开终端或命令提示符,执行以下命令安装依赖:
pip install matplotlib pandas numpy
对于销售数据的导入,我们通常处理的是CSV或Excel格式的业务数据。以下代码演示了如何从CSV文件加载销售数据,并进行基础的数据清洗:
import pandas as pd
# 读取销售数据CSV文件
sales_data = pd.read_csv('mobile_sales.csv')
# 基础数据清洗:处理缺失值和异常值
sales_data = sales_data.dropna() # 删除缺失值
sales_data = sales_data[sales_data['销量数量'] > 0] # 过滤无效销售记录
# 查看数据前5行
print(sales_data.head())
提示:如果手头没有现成的销售数据,可以使用以下代码生成模拟数据:
import numpy as np data = { '月份': np.random.randint(1, 13, 100), '内存配置': np.random.choice(['64GB','128GB','256GB'], 100), '销量数量': np.random.randint(50, 500, 100) } df = pd.DataFrame(data)
2. 基础可视化:月度销售趋势分析
理解销售数据的周期性特征是业务分析的第一步。使用Matplotlib的折线图可以清晰展示销售趋势:
import matplotlib.pyplot as plt
# 设置中文字体(解决中文显示问题)
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
# 按月分组计算总销量
monthly_sales = sales_data.groupby('月份')['销量数量'].sum()
# 创建画布和坐标轴
fig, ax = plt.subplots(figsize=(10, 6))
# 绘制折线图
ax.plot(monthly_sales.index, monthly_sales.values,
marker='o', color='#4C72B0', linewidth=2)
# 添加标题和标签
ax.set_title('2024年手机月度销售趋势', fontsize=16, pad=20)
ax.set_xlabel('月份', fontsize=12)
ax.set_ylabel('销量(台)', fontsize=12)
# 设置x轴刻度
ax.set_xticks(range(1, 13))
ax.set_xticklabels([f'{i}月' for i in range(1, 13)])
# 添加数据标签
for x, y in zip(monthly_sales.index, monthly_sales.values):
ax.text(x, y+20, f'{y}', ha='center', va='bottom')
plt.tight_layout()
plt.show()
这段代码会生成一张清晰的月度销售趋势图,其中:
- X轴显示1-12月份
- Y轴显示销量数量
- 每个数据点标注具体数值
- 使用蓝色折线连接各月数据点
3. 高级可视化:动态多维度分析
真实的业务分析往往需要从多个维度交叉分析数据。下面的代码展示了如何创建动态交互式图表,允许用户通过下拉菜单选择不同内存配置的销售数据:
from matplotlib.widgets import Dropdown
# 准备数据:按月份和内存配置分组
pivot_data = sales_data.pivot_table(
in

&spm=1001.2101.3001.5002&articleId=155408439&d=1&t=3&u=03d8dc06c136445a93e01e1bcec43074)
1055

被折叠的 条评论
为什么被折叠?



