首页 > 解决方案 > 有没有办法使用 openpyxl 在 Python 中删除或修改 xlsx (Excel) 图表?

问题描述

我找不到修改或删除现有工作簿中现有 Excel 图表的方法。

这是我可以实现的唯一代码:

from openpyxl.chart import AreaChart, Reference, Series
import openpyxl as opyxl

def CreateGraphAC(wb, ws, rows, columns):
    chart = AreaChart()
    chart.title = "Area Chart"
    chart.style = 13
    chart.x_axis.title = 'Test'
    chart.y_axis.title = 'Percentage'

    cats = Reference(ws, min_col=1, min_row=2, max_row=rows)
    data = Reference(ws, min_col=2, min_row=1, max_col=columns, max_row=rows)

    chart.add_data(data, titles_from_data=True)
    chart.set_categories(cats)

    ws.add_chart(chart, "F1")
    wb.save('test.xlsx')

wb = opyxl.load_workbook('test.xlsx')
allSheetNames = wb.sheetnames
ws = wb.active
CreateGraphAC(wb, ws, 2, 2)

我发现的唯一一件事是,您可以通过以下方式获取工作表上的图表列表:

ws._charts

有什么建议么?谢谢大家。

标签: pythonexcelchartsopenpyxlxlsx

解决方案


自己解决

del worksheet._charts[number]与 a 一起使用并workbook.save('file.xlsx')创建带有修改参数的新图表。


推荐阅读