グラフを画面に表示するだけでなく、画像ファイルとして保存しておけば、レポートや資料に貼り付けたり、メールで共有したりできます。Python の matplotlib には savefig() という便利な関数があります。
サンプルコード
import matplotlib.pyplot as plt
# サンプルデータ
categories = {"small": 12, "medium": 8, "large": 5}
# --- 棒グラフ ---
plt.figure(figsize=(6,4))
plt.bar(categories.keys(), categories.values(), color=['skyblue','orange','green'])
plt.title("結果の範囲別件数 (棒グラフ)")
plt.xlabel("カテゴリ")
plt.ylabel("件数")
# グラフを画像ファイルとして保存
plt.savefig("bar_chart.png", dpi=300) # 高解像度で保存
plt.close()
# --- 円グラフ ---
plt.figure(figsize=(6,6))
plt.pie(categories.values(), labels=categories.keys(),
autopct='%1.1f%%', colors=['skyblue','orange','green'])
plt.title("結果の範囲別割合 (円グラフ)")
# グラフを画像ファイルとして保存
plt.savefig("pie_chart.png", dpi=300)
plt.close()
print("グラフを画像ファイルとして保存しました!")
Python保存されるファイル
- bar_chart.png → 棒グラフ
- pie_chart.png → 円グラフ
解説ポイント
plt.savefig("ファイル名.png")→ グラフを画像ファイルとして保存。拡張子を変えれば JPG や PDF でも保存可能。dpi=300→ 解像度を指定。レポート用なら 300dpi 以上が推奨。plt.close()→ グラフを閉じてメモリを解放。複数グラフを作るときに便利。
応用の場面
- レポート作成 → グラフを Word や PowerPoint に貼り付ける。
- メール共有 → グラフ画像を添付して送る。
- Web公開 → グラフを PNG/JPG として保存してサイトに掲載。
まとめ
savefig()を使えばグラフを画像ファイルとして保存できる。- 高解像度で保存すればレポートや印刷にも使える。
- 複数のグラフを作るときは
plt.close()で整理すると効率的。


