Python Xlsxwriter图表

Python Xlsxwriter图表,python,excel,pandas,xlsxwriter,Python,Excel,Pandas,Xlsxwriter,我试图构建一个简单的python脚本,从.csv文件读取数据,将数据格式化为易于阅读的布局,然后根据用户输入将其写入新的xlsx文件或附加到现有的xlsx文件。这一切都很好,我写的新文件使用 with pd.ExcelWriter(file_path) as writer: df.to_excel(writer, sheet_name='Master') 现在我想添加第二张表,其中包含数据中的excel图表,并将上述代码扩展到: with pd.ExcelWriter(file

我试图构建一个简单的python脚本,从.csv文件读取数据,将数据格式化为易于阅读的布局,然后根据用户输入将其写入新的xlsx文件或附加到现有的xlsx文件。这一切都很好,我写的新文件使用

    with pd.ExcelWriter(file_path) as writer:
    df.to_excel(writer, sheet_name='Master')
现在我想添加第二张表,其中包含数据中的excel图表,并将上述代码扩展到:

with pd.ExcelWriter(file_path) as writer:
    df.to_excel(writer, sheet_name='Master')
    book = writer.book
    sheet = writer.sheets['Master']
    chart_a = book.add_chart({'type': 'line'})
    chart_a.add_series({
        'categories': ['Master', 1, 0, trend_data_row, 0],
        'values': ['Master', 1, 1, trend_data_row, 1],
    })
    chart_a.set_x_axis({'name': 'time', 'position_axis': 'on_tick'})
    chart_a.set_y_axis({'name': 'value'})
    chart_a.set_legend({'position': 'Bottom'})
    sheet.insert_chart('A11', chart_a)
    writer.save()
这会按预期将图表添加到“主”工作表中,我不知道如何创建第二个工作表并将图表插入其中。我曾尝试将
sheet=writer.sheets
更改为一个新名称[图形],但我想它是在寻找一个具有该名称的现有工作表,而不是创建一个。任何帮助都是非常感激的

我不明白如何创建第二张工作表,并将图表插入其中

您可以这样做:

将熊猫作为pd导入
#从一些数据创建一个数据帧。
df=pd.DataFrame({'Data':[10,20,30,20,15,30,45]})
#使用XlsxWriter作为引擎创建Excel编写器。
writer=pd.ExcelWriter('pandas\u chart.xlsx',engine='xlsxwriter')
#将数据帧转换为XlsxWriter Excel对象。
df.to_excel(书写者,工作表_name='Master')
#获取xlsxwriter工作簿对象。
工作簿=writer.book
#添加新工作表。
工作表=工作簿。添加工作表(“图形”)
#创建一个图表对象。
图表=工作簿。添加图表({'type':'column'})
#从dataframe数据配置图表系列。
图表.添加_系列({'values':['Master',1,1,7,1]})
#将图表插入工作表。
工作表。插入图表(“D2”,图表)
#关闭Excel编写器并输出Excel文件。
writer.save()
输出:

然后将其写入新的xlsx文件或附加到现有的xlsx文件

XlsxWriter无法写入现有文件。

请参阅此选项,它可以帮助您。