导入必要的库
`pandas` 用于数据处理和分析。
`xlwings` 用于与Excel交互。
`matplotlib` 用于数据可视化。
读取数据
使用 `pandas` 的 `read_csv` 函数读取财务数据,例如:
import pandas as pd
data = pd.read_csv('数据模板.csv', encoding='gbk', parse_dates=['成交时间'])
计算相关财务指标
销售额 = 单价 * 销量
客流量 = 订单ID去重后的次数
客单价 = 销售额 / 客流量
生成报表
使用 `xlsxwriter` 创建Excel文件并写入数据。
使用 `matplotlib` 创建图表展示数据。
示例代码
import pandas as pd
import xlsxwriter
import matplotlib.pyplot as plt
读取数据
data = pd.read_csv('数据模板.csv', encoding='gbk', parse_dates=['成交时间'])
计算销售额、客流量、客单价
data['销售额'] = data['单价'] * data['销量']
data['客流量'] = data['订单ID'].nunique()
data['客单价'] = data['销售额'] / data['客流量']
创建Excel文件
workbook = xlsxwriter.Workbook('财务报表.xlsx')
worksheet = workbook.add_worksheet()
写入数据到Excel
for r_idx, row in data.iterrows():
for c_idx, value in enumerate(row):
worksheet.write(r_idx, c_idx, value)
创建柱状图
chart = workbook.add_chart({'type': 'column'})
chart.add_series({
'name': '销售额',
'categories': ['财务报表.xlsx', 1, 0, len(data), 0],
'values': ['财务报表.xlsx', 1, 1, len(data), 1],
})
chart.set_title({'name': '按月销售额'})
chart.set_x_axis({'name': '月份'})
chart.set_y_axis({'name': '金额'})
将图表添加到工作表
worksheet.insert_chart('E2', chart)
关闭并保存Excel文件
workbook.close()
以上代码示例展示了如何使用Python和 `xlsxwriter` 库创建一个包含数据的Excel文件,并使用 `matplotlib` 生成柱状图展示销售额。请根据实际数据结构调整代码中的列名和数据处理逻辑。