@Dini4ka

Как правильно давать значения дли диаграмм в openpyxl?

Вот python код, который формирует данные на страничке .xlsx, а затем рисует на ней нужную диаграмму. Проблему в том, что он рисует неправильную диаграмму :
6448da7441d65035222244.png
В то время как должна быть такая
6448dabbb23a1746947471.png
.Ниже прилагаю сам код, может я там как значения неправильно даю, или что, никак понять не могу. Спасибо за помощь :
from openpyxl import Workbook
from openpyxl.chart import BarChart, Series, Reference

wb = Workbook(write_only=True)
ws = wb.create_sheet()

rows = [
    ('месяцы', 'январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь',
     'декабрь', 'январь'),
    ('Доход 1-ый год', 0, 45000, 90000, 90000, 90000, 90000, 90000, 90000, 90000, 90000, 90000, 90000, 90000),
    ('Доход 2-ой год', 90000, 90000, 90000, 90000, 90000, 90000, 0, 45000, 90000, 90000, 90000, 90000, 90000),
]

for row in rows:
    ws.append(row)

chart1 = BarChart()
chart1.type = "col"
chart1.style = 10
chart1.title = "Bar Chart"
chart1.y_axis.title = 'Test number'
chart1.x_axis.title = 'Sample length (mm)'

data = Reference(ws, min_col=1, max_col=14, min_row=2, max_row=3)
cats = Reference(ws, min_col=1, min_row=1, max_col=13)
chart1.add_data(data, titles_from_data=True)
chart1.set_categories(cats)
chart1.shape = 4
ws.add_chart(chart1, "A10")

wb.save("bar.xlsx")
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы