путь к листу правильный, но гистограмма не добавляется на лист - PullRequest
0 голосов
/ 23 сентября 2019

Я пытаюсь добавить гистограмму в таблицу Excel, но в итоге она не добавляется на лист.

import openpyxl
from openpyxl.chart import BarChart,Reference
path = "C:\\Users\\nEW u\\Desktop\\new.xlsx"
newob = openpyxl.load_workbook(path)
sheetob = newob.active
rows = [
    ('Number', 'Batch 1', 'Batch 2'),
    (2, 10, 30),
    (3, 40, 60),
    (4, 50, 70),
    (5, 20, 10),
    (6, 10, 40),
    (7, 50, 30),
]


for row in rows:
    sheetob.append(row)
values = Reference(sheetob, min_col = 2, min_row = 1, max_col = 7, max_row = 3)
values1 =  Reference(sheetob, min_col =1, min_row = 2, max_row = 7)
chart = BarChart()
chart.add_data(values)
chart.title = 'Bar Chart'
chart.x_axis.title = 'X-axis'
chart.y_axis.title = 'Y-axis'
sheetob.add_chart(chart, "I3")
newob.save("new.xlsx")

НЕТ сообщения об ошибке.

1 Ответ

0 голосов
/ 23 сентября 2019

сначала вам нужно сохранить график в формате png, а затем экспортировать в рабочую книгу. Приведенный ниже код будет экспортирован во входной файл Excel в ячейку A1 и сохранен как выходной файл Excel


wb = openpyxl.load_workbook('input.xlsx')
ws = wb.active

img = openpyxl.drawing.image.Image('myplot.png')
ws.add_image(ws.cell('A1'))

ws.save('output.xlsx')```
...