如何基于CSV销售数据制作按日期统计的柱状图(含日期格式处理)
解决方案
1. 日期格式转换与数据聚合(Python Pandas 实现)
先处理CSV中的日期格式,提取纯日期后按日聚合销售额:
import pandas as pd # 读取CSV数据 df = pd.read_csv("your_sales_data.csv") # 解析带时间的日期,提取纯日期部分 df["date"] = pd.to_datetime(df["your_date_column"], format="%d.%m.%Y %H:%M").dt.date # 按日期分组,计算每日总销售额 daily_sales = df.groupby("date")["sales_amount"].sum().reset_index()
说明:format="%d.%m.%Y %H:%M"完全匹配你提供的01.08.2023 00:37格式,转换后得到仅包含年/月/日的日期值,再通过分组求和得到每日销售总额。
2. 绘制目标柱状图(Matplotlib 实现)
基于聚合后的数据生成柱状图,同时显示Y轴和柱子顶部的销售额:
import matplotlib.pyplot as plt plt.figure(figsize=(12, 6)) bars = plt.bar(daily_sales["date"], daily_sales["sales_amount"]) # 为每个柱子添加销售额标签 for bar in bars: height = bar.get_height() plt.text( bar.get_x() + bar.get_width()/2., height, f"{height:.2f}", # 保留两位小数,可按需调整 ha="center", va="bottom" ) # 配置图表元素 plt.xlabel("日期") plt.ylabel("销售额") plt.title("每日客户销售额统计") plt.xticks(rotation=45) # 旋转日期标签避免重叠 plt.tight_layout() plt.show()
备选:Excel 可视化方案
如果不用代码,用Excel也能快速实现:
- 导入CSV后,选中日期列,右键「设置单元格格式」→「日期」,选择仅显示年/月/日的格式。
- 插入数据透视表:将日期拖至「行」区域,销售额拖至「值」区域并设置为「求和」。
- 选中透视表数据,插入柱状图,右键柱子选择「添加数据标签」,调整X轴标签格式即可。
内容的提问来源于stack exchange,提问作者Peter Snee
相关产品推荐
相关产品推荐

