Python | 応用例:「グループ化した結果を グラフ化(棒グラフや円グラフ) して可視化する」

Python
スポンサーリンク

グループ化した結果は、棒グラフや円グラフにすると「件数の比較」や「割合の把握」が直感的に理解できます。Python の matplotlib を使えば簡単に可視化できます。


サンプルコード(棒グラフ+円グラフ)

import matplotlib.pyplot as plt
from collections import defaultdict

# サンプルデータ(実際は JSON を読み込んで得たもの)
data = [
    {"A": 3, "B": 3, "C": 5, "result": 45},
    {"A": 5, "B": 3, "C": 3, "result": 45},
    {"A": 5, "B": 5, "C": 3, "result": 75},
    {"A": 5, "B": 3, "C": 5, "result": 75},
    {"A": 1, "B": 1, "C": 1, "result": 1},
    {"A": 1, "B": 1, "C": 3, "result": 3},
    {"A": 1, "B": 3, "C": 3, "result": 9}
]

# グループ化(result の値で分類)
categories = {"small": 0, "medium": 0, "large": 0}
for item in data:
    if item["result"] < 30:
        categories["small"] += 1
    elif item["result"] < 50:
        categories["medium"] += 1
    else:
        categories["large"] += 1

# --- 棒グラフ ---
plt.figure(figsize=(6,4))
plt.bar(categories.keys(), categories.values(), color=['skyblue','orange','green'])
plt.title("結果の範囲別件数 (棒グラフ)")
plt.xlabel("カテゴリ")
plt.ylabel("件数")
plt.show()

# --- 円グラフ ---
plt.figure(figsize=(6,6))
plt.pie(categories.values(), labels=categories.keys(),
        autopct='%1.1f%%', colors=['skyblue','orange','green'])
plt.title("結果の範囲別割合 (円グラフ)")
plt.show()
Python

出力イメージ

  • 棒グラフ → small, medium, large の件数を棒の高さで比較できる
  • 円グラフ → 全体に占める割合を直感的に把握できる

解説ポイント

  • 棒グラフは「件数の比較」に強い → どのカテゴリが多いか一目でわかる
  • 円グラフは「割合の把握」に強い → 全体の中での比率が直感的に理解できる
  • 色分けをするとカテゴリの違いがさらに見やすくなる

応用の場面

  • 売上分析 → 金額範囲ごとの件数や割合を可視化
  • ログ解析 → エラーコードごとの件数や割合をグラフ化
  • ゲームデータ → スコア範囲ごとのプレイヤー数を可視化

👉 このように「グループ化した結果をグラフ化」すると、数値だけでは見えにくい傾向を直感的に理解できるようになります。

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