可能的原因是设置字体的代码位置不正确。在设置chart的字体时,应该将字体属性设置在chart的title或者axis等属性上,而不是将字体属性设置在chart对象本身上。以下是一个示例代码:

from openpyxl import Workbook
from openpyxl.drawing.text import Font
from openpyxl.chart import BarChart, Reference

# 创建一个Workbook和一个Worksheet
wb = Workbook()
ws = wb.active

# 填充一些数据
data = [
    ['Category', 'Amount'],
    ['A', 10],
    ['B', 15],
    ['C', 7],
]
for row in data:
    ws.append(row)

# 创建一个Chart对象
chart = BarChart()

# 设置标题字体
chart.title = "Chart Title"
chart.title.font = Font(size=14, bold=True, italic=True, color="FF0000")

# 设置x轴和y轴字体
chart.x_axis.title = "X Axis"
chart.x_axis.title.font = Font(size=12, bold=True)
chart.y_axis.title = "Y Axis"
chart.y_axis.title.font = Font(size=12, bold=True)

# 设置legend字体
chart.legend.font = Font(size=10, bold=True)

# 设置数据范围
data_range = Reference(ws, min_col=2, min_row=1, max_col=2, max_row=4)
categories_range = Reference(ws, min_col=1, min_row=2, max_row=4)

# 添加数据和分类
chart.add_data(data_range, titles_from_data=True)
chart.set_categories(categories_range)

# 将chart添加到Worksheet中
ws.add_chart(chart, "E5")

# 保存Workbook
wb.save("chart.xlsx")

在这个示例中,我们分别设置了标题、x轴、y轴、legend的字体。确保将设置字体的代码放在正确的位置,即chart的title、axis等属性上。最后保存Workbook,打开生成的chart.xlsx文件,可以看到设置的字体生效了。

openpyxl设置chart的字体不生效

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

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