从dataframe到excel删除现有条形图

2024-04-26 05:59:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我编写了一个程序,用python在excel中创建一个报表。下面的脚本插入一个条形图到电子表格,这似乎是完美的工作。。。你知道吗

barchart = workbook.add_chart({'type': 'bar','legend':False})
barchart.set_legend({'none':True})
series_end_range = len(strategy.keys())+12
barchart.add_series({'values':'=Attribution!$B$12:$B$'+str(series_end_range),'categories': '=Attribution!$A$12:$A$'+str(series_end_range),'data_labels': {'value': True,'category': True,'leader_lines': True},})`
worksheet.insert_chart('D12',barchart,{'x_scale':.4,'y_scale':1.2})

但是,当我尝试使用下面的代码在这个图表下面编写另一个数据帧时,图表就消失了。你知道吗

from openpyxl import load_workbook
book = load_workbook(f'{FUNDNAME}.xlsx')
writer = pd.ExcelWriter(f'{FUNDNAME}.xlsx', engine='openpyxl') 
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
df_returns.to_excel(writer,sheet_name='Attribution',startrow=series_end_range+4, startcol=0)

知道第二段代码的哪一部分导致第一段代码中的图表消失了吗?它远低于图表放置的位置,所以它似乎没有被覆盖,因为它在同一个空间中

谢谢!你知道吗


Tags: 代码addtruewschart图表rangeexcel