Reputation: 390
I'm using Python 3.6.3 and openpyxl 2.5.4
I wrote some code and noticed that setting my chart title with chart.title = "Test Heading"
does nothing. As a sanity check I copied and running the example from here:
from openpyxl import Workbook
from openpyxl.chart import (
ScatterChart,
Reference,
Series,
)
wb = Workbook()
ws = wb.active
rows = [
['Size', 'Batch 1', 'Batch 2'],
[2, 40, 30],
[3, 40, 25],
[4, 50, 30],
[5, 30, 25],
[6, 25, 35],
[7, 20, 40],
]
for row in rows:
ws.append(row)
chart = ScatterChart()
chart.title = "Scatter Chart"
chart.style = 13
chart.x_axis.title = 'Size'
chart.y_axis.title = 'Percentage'
xvalues = Reference(ws, min_col=1, min_row=2, max_row=7)
for i in range(2, 4):
values = Reference(ws, min_col=i, min_row=1, max_row=7)
series = Series(values, xvalues, title_from_data=True)
chart.series.append(series)
ws.add_chart(chart, "A10")
wb.save("scatter.xlsx")
Sadly the title in my sample output is still missing:
Oddly, changing title_from_data=True
to title_from_data=False
also seems to have no effect on the contents of the chart.
Upvotes: 0
Views: 1999
Reputation: 19507
This looks very much like a bug in the application you're using to view the file, which I suspect is LibreOffice.
Upvotes: 3