2017-11-30 7 views
0

棒グラフで値が5の参照線を追加したかったのです。絵のように: Bar Graph 私のコードは次のようである:縦棒グラフに参照線を追加しましたが、プレゼンテーションが破損しました

prs=Presentation() 
slide = prs.slides.add_slide(prs.slide_layouts[5]) 
chart_data = ChartData() 
chart_data.categories = ['East', 'West', 'Midwest'] 
chart_data.add_series('Q1 Sales', (19.2, 21.4, 16.7)) 
chart_data.add_series('Q2 Sales', (22.3, 28.6, 15.2)) 
chart_data.add_series('Q3 Sales', (20.4, 26.3, 14.2)) 

x, y, cx, cy = Inches(2), Inches(2), Inches(6), Inches(4.5) 
cchart = slide.shapes.add_chart(
    XL_CHART_TYPE.COLUMN_CLUSTERED, x, y, cx, cy, chart_data 
) 

prs1=Presentation() 
slide1 = prs1.slides.add_slide(prs1.slide_layouts[5]) 
chart_data1 = ChartData() 
chart_data1.categories = ['East', 'West', 'Midwest'] 
chart_data1.add_series('Q1 Sales', (5, 5, 5)) 
chart_data1.add_series('Q2 Sales', (5, 5, 5)) 
chart_data1.add_series('Q3 Sales', (5, 5, 5)) 

lchart = slide1.shapes.add_chart(
    XL_CHART_TYPE.LINE, x, y, cx, cy, chart_data1 
) 
chartc = cchart.chart 
chartl = lchart.chart 
a=chartl.plots._plotArea 
b=chartc.plots._plotArea 
k=a.getchildren()[0] 
b.insert(0,k) 
prs.save('testbarline.pptx') 

問題は次のとおりです。 私はプレゼンテーションを開くと、それは、「PowerPointがtestbarline.pptxの内容に問題があることを発見しました。」と表示しますそれから私は '修理'をクリックします、それは修理することはできません。ここで何が問題なの?ありがとうございました!

答えて

0

あなたのコードで生成されたXMLと、自分が望む方法を見て手作業で作成したグラフのXMLを比較します。

あなたはいくつかの明らかな違いがあると思います。

あなたがしようとしていることは簡単なことではありません。 「ターゲット」XMLが何であるかを理解してから、必要な正確なビットを追加するためにpython-pptx APIによって生成されたXMLから作業する必要があります。

opc-diagはこの作業に便利です。

関連する問題