Python-pptx:如果同一张幻灯片上有两个图表,如何更新第二个图表的图表数据
Python-pptx: How to update chart data for the second chart, if two chart are present on same slide
我想更新我现有的 powerpoint 演示幻灯片的图表数据,有 2 个图表,即条形图和饼图。我能够成功地更新条形图,因为它是我的内容幻灯片占位符上的第一个元素。现在我不确定如何更新第二张图表,即同一张幻灯片上的饼图。
我的代码如下:
prs = Presentation("Request_Slide.pptx")
slide = prs.slides[0]
for shape in slide.placeholders:
print('%d %s' %(shape.placeholder_format.idx, shape.name))
上面我得到了以下回复:
0 Title 1
1 Content Placeholder 5
在这个帮助下,我设法导航到我在 Slide[0] 上的第一个图表并更新了它的图表数据,但是我很难导航到内容占位符中的第二个图表。任何建议都会有很大的帮助,在此先感谢。
设法解决使用列出形状名称索引和使用形状索引更新图表数据的问题,方法是使用以下代码:
list_shape_names = [shape.name for shape in slide.shapes]
if shape_name not in list_shape_names:
shape_index = None
else:
shape_index = list_shape_names.index(shape_name)
但是在传递 shape_name 时要小心,因为它区分大小写。
我想更新我现有的 powerpoint 演示幻灯片的图表数据,有 2 个图表,即条形图和饼图。我能够成功地更新条形图,因为它是我的内容幻灯片占位符上的第一个元素。现在我不确定如何更新第二张图表,即同一张幻灯片上的饼图。 我的代码如下:
prs = Presentation("Request_Slide.pptx")
slide = prs.slides[0]
for shape in slide.placeholders:
print('%d %s' %(shape.placeholder_format.idx, shape.name))
上面我得到了以下回复:
0 Title 1
1 Content Placeholder 5
在这个帮助下,我设法导航到我在 Slide[0] 上的第一个图表并更新了它的图表数据,但是我很难导航到内容占位符中的第二个图表。任何建议都会有很大的帮助,在此先感谢。
设法解决使用列出形状名称索引和使用形状索引更新图表数据的问题,方法是使用以下代码:
list_shape_names = [shape.name for shape in slide.shapes]
if shape_name not in list_shape_names:
shape_index = None
else:
shape_index = list_shape_names.index(shape_name)
但是在传递 shape_name 时要小心,因为它区分大小写。