これまで「グラフを Word や PowerPoint に挿入する」方法を紹介しました。さらに応用すると、複数ページ(Word)や複数スライド(PowerPoint)を自動生成して、グラフを整理して配置できます。これにより、本格的なレポートやプレゼン資料を自動化できます。
Word に複数ページを自動生成する例
from docx import Document
# 新しい Word 文書を作成
doc = Document()
# ページ1: 棒グラフ
doc.add_heading("分析レポート - 棒グラフ", level=1)
doc.add_picture("bar_chart.png", width=None, height=None)
doc.add_paragraph("このページでは結果の範囲別件数を棒グラフで示しています。")
# 改ページ
doc.add_page_break()
# ページ2: 円グラフ
doc.add_heading("分析レポート - 円グラフ", level=1)
doc.add_picture("pie_chart.png", width=None, height=None)
doc.add_paragraph("このページでは結果の範囲別割合を円グラフで示しています。")
# 保存
doc.save("multi_page_report.docx")
Python👉 実行すると 2ページ構成の Word レポートが生成されます。
PowerPoint に複数スライドを自動生成する例
from pptx import Presentation
from pptx.util import Inches
# 新しいプレゼン資料を作成
prs = Presentation()
# スライド1: 棒グラフ
slide_layout = prs.slide_layouts[5] # 白紙レイアウト
slide1 = prs.slides.add_slide(slide_layout)
title1 = slide1.shapes.title
title1.text = "結果の範囲別件数 (棒グラフ)"
slide1.shapes.add_picture("bar_chart.png", Inches(1), Inches(2), Inches(6), Inches(4))
# スライド2: 円グラフ
slide2 = prs.slides.add_slide(slide_layout)
title2 = slide2.shapes.title
title2.text = "結果の範囲別割合 (円グラフ)"
slide2.shapes.add_picture("pie_chart.png", Inches(1), Inches(2), Inches(6), Inches(6))
# 保存
prs.save("multi_slide_report.pptx")
Python👉 実行すると 2スライド構成の PowerPoint プレゼン資料が生成されます。
解説ポイント
- Word →
add_page_break()を使えば複数ページを作成可能。 - PowerPoint →
prs.slides.add_slide()を繰り返せば複数スライドを追加可能。 - 整理して配置 → タイトルを付けて、画像の位置やサイズを調整することで見やすい資料になる。
応用の場面
- 定期レポート → 毎週の分析結果を複数ページにまとめる。
- プレゼン資料 → グラフごとにスライドを分けて整理。
- 自動化 → データ更新に合わせて Word/PPT を自動生成。
まとめ
- Word は ページごとにグラフを配置してレポート化。
- PowerPoint は スライドごとにグラフを配置してプレゼン化。
- 自動生成により、レポートやプレゼン資料作成の効率が大幅に向上する。


