我正在尝试调用pptx模块中的Chart类。Chart有两个参数: chartSpace和chart_part。问题是我不知道这两个论点是什么。这个问题可能有一个简单的答案,但我试着查阅了所有的文档,都找不到关于这些论点的任何东西。有人能解释一下这些论点在寻找什么吗?
from pptx import Presentation
from pptx.enum.chart import XL_CHART_TYPE, XL_TICK_LABEL_POSITION
from pptx.chart.data import CategoryChartData
from pptx.chart.data import ChartData
from pptx.enum.shapes import PP_PLACEHOLDER
from pandas import DataFrame as DF
from pptx.chart.chart import Chart
prs_dir = 'Directory'
layout = prs.slide_layouts[6]
slide = prs.slides.add_slide( layout )
chart_data = ChartData()
chart_data.categories = ['Budget','Actuals']
chart_data.add_series('Budget', (1,21,23,4,5,6,7,35))
chart_data.add_series('Actuals', (1,21,23,4,5,6,7,35))
chart = Chart()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-207-e560d7744421> in <module>
----> 1 chart = Chart()
TypeError: __init__() missing 2 required positional arguments: 'chartSpace' and 'chart_part'```发布于 2020-05-07 04:34:16
Chart类不打算直接实例化。使用幻灯片形状集合上的.add_chart()方法添加图表。
from pptx import Presentation
from pptx.chart.data import CategoryChartData
from pptx.enum.chart import XL_CHART_TYPE
from pptx.util import Inches
# create presentation with 1 slide ------
prs = Presentation()
slide = prs.slides.add_slide(prs.slide_layouts[5])
# define chart data ---------------------
chart_data = CategoryChartData()
chart_data.categories = ['East', 'West', 'Midwest']
chart_data.add_series('Series 1', (19.2, 21.4, 16.7))
# add chart to slide --------------------
x, y, cx, cy = Inches(2), Inches(2), Inches(6), Inches(4.5)
slide.shapes.add_chart(
XL_CHART_TYPE.COLUMN_CLUSTERED, x, y, cx, cy, chart_data
)
prs.save('chart-01.pptx')有关详细信息,请参阅此处的文档:https://python-pptx.readthedocs.io/en/latest/user/charts.html
https://stackoverflow.com/questions/61641990
复制相似问题