openpyxl - 图表不显示坐标轴

3

你好,我是一个新手,正在阅读openpyxl的文档。根据文档,这里是我写的代码。

from openpyxl import Workbook
from openpyxl.chart import (BarChart, Reference)

book = Workbook()

sheet = book.active

rows = (
    ('USA', 46),
    ('China', 38),
    ('UK', 29),
    ('Russia', 22),
    ('South Korea', 13),
    ('Germany', 11)
)

for row in rows:
    sheet.append(row)

chart = BarChart()

data = Reference(sheet, min_row = 1, max_row=6, min_col=2, max_col=2)
cats = Reference(sheet, min_col=1, min_row=1, max_row=6)

chart.add_data(data)
chart.set_categories(cats)

sheet.add_chart(chart, 'A8')

book.save('chart.xlsx')

我运行了代码,然后使用LibreOffice打开文件,图表没有显示坐标轴。我必须手动“插入/删除坐标轴”才能让它们显示出来。这是由于代码还是LibreOffice引起的?有人可以指出吗?


在Excel中,它正确地显示了国家在底部和左侧的“0-50”。 - Martin Evans
似乎是LibreOffice出了问题。 - Charlie Clark
1个回答

11

我遇到了同样的问题。使用 openpyxl 生成图形后,在 Libreoffice 中这些图形的轴线没有显示出来,但在 Excel 中可以正常显示。经过多次测试,我终于解决了问题,我做了以下操作:

chart.x_axis.delete = False
chart.y_axis.delete = False

我希望我的第一次在stackoverflow上的回答可以帮到您。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接