Python | 応用例:「複数のグラフや表を自動で章立てしてレポート化」

Python
スポンサーリンク

これまで「Word や PowerPoint に複数ページ・複数スライドを自動生成」する方法を紹介しました。さらに応用すると、複数のグラフや表を章立てしてレポート化できます。章立てを自動化することで、分析結果を体系的にまとめた本格的なレポートが作成可能です。


Word レポートに章立てしてグラフ+表を挿入する例

from docx import Document
from docx.shared import Inches

# 新しい Word 文書を作成
doc = Document()

# --- 第1章: 棒グラフ ---
doc.add_heading("第1章: 結果の範囲別件数", level=1)
doc.add_picture("bar_chart.png", width=Inches(5))
doc.add_paragraph("この章では、結果を範囲ごとに分類した件数を棒グラフで示しています。")

# --- 第2章: 円グラフ ---
doc.add_heading("第2章: 結果の範囲別割合", level=1)
doc.add_picture("pie_chart.png", width=Inches(5))
doc.add_paragraph("この章では、結果の割合を円グラフで示しています。")

# --- 第3章: 集計表 ---
doc.add_heading("第3章: 集計表", level=1)
table = doc.add_table(rows=1, cols=2)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'カテゴリ'
hdr_cells[1].text = '件数'

categories = {"small": 12, "medium": 8, "large": 5}
for key, value in categories.items():
    row_cells = table.add_row().cells
    row_cells[0].text = key
    row_cells[1].text = str(value)

doc.add_paragraph("この章では、カテゴリごとの件数を表形式で示しています。")

# 保存
doc.save("chaptered_report.docx")
Python

👉 実行すると 章立てされた Word レポートが生成されます。


PowerPoint に章立てして複数スライドを作成する例

from pptx import Presentation
from pptx.util import Inches

prs = Presentation()

# --- 第1章: 棒グラフ ---
slide1 = prs.slides.add_slide(prs.slide_layouts[5])
title1 = slide1.shapes.title
title1.text = "第1章: 結果の範囲別件数"
slide1.shapes.add_picture("bar_chart.png", Inches(1), Inches(2), Inches(6), Inches(4))

# --- 第2章: 円グラフ ---
slide2 = prs.slides.add_slide(prs.slide_layouts[5])
title2 = slide2.shapes.title
title2.text = "第2章: 結果の範囲別割合"
slide2.shapes.add_picture("pie_chart.png", Inches(1), Inches(2), Inches(6), Inches(6))

# --- 第3章: 集計表 ---
slide3 = prs.slides.add_slide(prs.slide_layouts[5])
title3 = slide3.shapes.title
title3.text = "第3章: 集計表"
rows = len(categories) + 1
cols = 2
table = slide3.shapes.add_table(rows, cols, Inches(1), Inches(2), Inches(6), Inches(3)).table
table.cell(0,0).text = "カテゴリ"
table.cell(0,1).text = "件数"
for i, (key, value) in enumerate(categories.items(), start=1):
    table.cell(i,0).text = key
    table.cell(i,1).text = str(value)

prs.save("chaptered_report.pptx")
Python

👉 実行すると 章立てされた PowerPoint プレゼン資料が生成されます。


解説ポイント

  • 章立てadd_heading()(Word)や title.text(PowerPoint)で章タイトルを付ける。
  • グラフ挿入add_picture() を使って画像を配置。
  • 表挿入 → Word では add_table()、PowerPoint では add_table() を利用。
  • 自動化メリット → データ更新に合わせて章立てレポートを自動生成できる。

応用の場面

  • 定期レポート → 毎週の分析結果を章立てしてまとめる。
  • プレゼン資料 → グラフと表を章ごとに整理してスライド化。
  • データ分析共有 → チームにわかりやすい形で自動生成したレポートを配布。

まとめ

  • Word では 章ごとにページ+グラフ+表を配置。
  • PowerPoint では スライドごとに章立てしてグラフ+表を配置。
  • 自動化により、体系的なレポートやプレゼン資料を効率的に作成できる。

Python
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました