要在 openpyxl 中设置折线图的图例显示系列名称,可以使用'Legend'对象的'legend_entries'属性来访问图例项,并使用'LegendEntry'对象的'name'属性来设置系列名称。

以下是一个示例代码,演示如何设置图例显示系列名称:

from openpyxl import Workbook
from openpyxl.chart import LineChart, Reference
from openpyxl.drawing.text import Paragraph, ParagraphProperties, Font

# 创建一个新的工作簿
wb = Workbook()

# 在工作簿中创建一个工作表
ws = wb.active

# 向工作表添加一些数据
data = [
    ['Series 1', 1, 2, 3],
    ['Series 2', 4, 5, 6],
    ['Series 3', 7, 8, 9]
]
for row in data:
    ws.append(row)

# 创建折线图对象
chart = LineChart()

# 设置图表的数据范围
values = Reference(ws, min_col=2, min_row=1, max_col=4, max_row=4)
chart.add_data(values, titles_from_data=True)

# 添加图表到工作表
ws.add_chart(chart, "E5")

# 获取图表的图例对象
legend = chart.legend

# 设置图例项的系列名称
for i, legend_entry in enumerate(legend.legend_entries):
    # 获取系列名称
    series_name = data[i][0]

    # 创建一个段落对象,并设置段落的字体属性
    paragraph = Paragraph()
    paragraph.text = series_name
    paragraph.font = Font(name='Arial', size=10)

    # 设置图例项的名称为段落对象
    legend_entry.name = paragraph

# 保存工作簿
wb.save('chart_with_legend.xlsx')

在上面的示例中,我们创建了一个包含3个系列的折线图,并将其添加到工作表中。然后,我们获取了图例对象,并使用'legend_entries'属性访问每个图例项。对于每个图例项,我们获取了对应的系列名称,创建了一个段落对象,并将段落对象设置为图例项的名称。

最后,我们保存了工作簿,并将其命名为'chart_with_legend.xlsx'。

Openpyxl 折线图:如何设置图例显示系列名称

原文地址: https://www.cveoy.top/t/topic/lL1g 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录