Python-pptx 库 - 打印类别名称
Python-pptx Library - printing Category Name
有没有办法在图表中打印一个系列的类别名称
from pptx import Presentation
from pptx.chart.data import ChartData
shape = slide_11.shapes[5]
ReachChart = shape.chart
reach_data = ChartData()
reach_data.categories = ['reach 1', 'reach 2']
reach_data.add_series('series', tuple(3.145, 7.526))
ReachChart.replace_data(reach_data)
我可以使用以下方法打印系列值
for i in shape.chart.series:
print(i.values)
以同样的方式,我需要打印类别值(如 'reach 1' 和 'reach 2')
我认为您正在寻找 chart.plots[0].categories
,描述了 here in the documentation。
A plot 是单一类型的 "sub"-图表,例如条形图或折线图。因为 PowerPoint 可以将这些组合成一个 "combo-chart",其中一些系列有条形,另一些系列有一条线,所以图表需要能够有多个图。在大多数情况下只有一个,因此 plots[0]
指的是第一个。
在你的情况下它会是这样的:
for cat in shape.chart.plots[0].categories:
print(cat.label)
API 周围的类别实际上比这更复杂一些,以提供分层标签(如沿轴的子组)。但是在您的情况下,您应该能够忽略 Categories
对象上的附加属性并以这种直接的方式进行操作,除非您以后遇到分层类别。
有没有办法在图表中打印一个系列的类别名称
from pptx import Presentation
from pptx.chart.data import ChartData
shape = slide_11.shapes[5]
ReachChart = shape.chart
reach_data = ChartData()
reach_data.categories = ['reach 1', 'reach 2']
reach_data.add_series('series', tuple(3.145, 7.526))
ReachChart.replace_data(reach_data)
我可以使用以下方法打印系列值
for i in shape.chart.series:
print(i.values)
以同样的方式,我需要打印类别值(如 'reach 1' 和 'reach 2')
我认为您正在寻找 chart.plots[0].categories
,描述了 here in the documentation。
A plot 是单一类型的 "sub"-图表,例如条形图或折线图。因为 PowerPoint 可以将这些组合成一个 "combo-chart",其中一些系列有条形,另一些系列有一条线,所以图表需要能够有多个图。在大多数情况下只有一个,因此 plots[0]
指的是第一个。
在你的情况下它会是这样的:
for cat in shape.chart.plots[0].categories:
print(cat.label)
API 周围的类别实际上比这更复杂一些,以提供分层标签(如沿轴的子组)。但是在您的情况下,您应该能够忽略 Categories
对象上的附加属性并以这种直接的方式进行操作,除非您以后遇到分层类别。