Я пытаюсь добавить метки для кольцевой диаграммы. Все работает нормально, пока не попробую выставить положение меток. Ни BEST_FIT
, ни OUTSIDE_END
не работают. Когда я добавляю строку data_labels.position = XL_LABEL_POSITION.BEST_FIT
, файл просто не открывается. Вот код:
from pptx import Presentation
from pptx.chart.data import ChartData
from pptx.enum.chart import XL_CHART_TYPE, XL_LABEL_POSITION
from pptx.util import Inches, Pt
prs = Presentation()
slide = prs.slides.add_slide(prs.slide_layouts[6]) # blank slide
chart_data = ChartData()
chart_data.categories = ['aaa','bbb', 'ccc','ddd', 'eee', 'fff','ggg','hhh', 'iii', 'jjj','kkk','lll','mmm', 'nnn']
chart_data.add_series('Test', [10,50,60,30,5,35,10,15,70,1,10,5,60,30])
x, y, cx, cy = Inches(1), Inches(1), Inches(8), Inches(6)
chart = slide.shapes.add_chart(XL_CHART_TYPE.DOUGHNUT, x, y, cx, cy, chart_data).chart
chart.plots[0].has_data_labels=True
data_labels = chart.plots[0].data_labels
data_labels.font.size = Pt(12)
data_labels.show_percentage = True
data_labels.show_category_name = True
data_labels.show_value = True
data_labels.position = XL_LABEL_POSITION.BEST_FIT
#or
#data_labels.position = XL_LABEL_POSITION.OUTSIDE_END
prs.save('test.pptx')
Как вы понимаете, мои настоящие имена категорий данных намного длиннее и без правильного позиционирования их невозможно прочитать. Итак, как я могу установить положение меток, чтобы они были удобочитаемыми?