【ひすとぐらむ】

ヒストグラム とは?

💡 データの「かたまり」がどこにあるかを棒の高さで見える化する
📌 このページのポイント
ヒストグラム — データの分布を見える化 リクエスト数 レスポンスタイム (ms) 0-50 50-100 100-150 150-200 200-300 300-500 500+ 120 350 280 150 60 25 15 ほとんどが100ms以内だが、500ms超のリクエストも存在 → 右裾の長い分布
ヒストグラムのイメージ(レスポンスタイムの分布)
ひよこ ひよこ

ヒストグラムって棒グラフとどう違うの?

ペンギン先生 ペンギン先生

棒グラフはカテゴリ別の値を比べるものだけど、ヒストグラムは連続するデータの分布を見るものだよ。だから棒と棒の間に隙間がないのが特徴だね。たとえば「テストの点数」を10点刻みで何人いるか表すとヒストグラムになるよ。

ひよこ ひよこ

ソフトウェア開発ではどう使うの?

ペンギン先生 ペンギン先生

レスポンスタイムの分布を見るのが定番だよ。ほとんどのリクエストが100ms以内で完了しているけど、一部が1秒以上かかっている…みたいなパターンが見えるんだ。平均値だけでは気づけない「ばらつき」を発見できるよ。

ひよこ ひよこ

分布の形でわかることってあるの?

ペンギン先生 ペンギン先生

あるよ!山が1つで左右対称なら正常、山が2つあれば別々の母集団が混ざっている可能性がある。右に長い裾を引いていれば外れ値(異常に遅いリクエスト等)がある証拠だね。

ひよこ ひよこ

パレート図との使い分けは?

ペンギン先生 ペンギン先生

ヒストグラムは連続データの分布を見るもので、パレート図はカテゴリ別の頻度を比べるものだよ。たとえば「バグの発見日数の分布」はヒストグラム、「バグの種類別件数」はパレート図で見るのが適切だね。

ひよこ ひよこ

ビンの数ってどう決めるの?

ペンギン先生 ペンギン先生

スタージェスの公式(ビン数 ≈ 1 + 3.3 × log₁₀(データ数))が有名だけど、実務では試行錯誤で見やすい数を探すことが多いよ。少なすぎると分布の特徴が消えるし、多すぎるとノイズだらけになる。Excelやpythonのmatplotlibなら自動で適切なビン数を提案してくれるよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ヒストグラム」って出てきたら「データの分布をバーで表すグラフ」と思えればだいたいOK!
📖 おまけ:英語の意味
「Histogram」 = 度数分布図
💬 ギリシャ語のhistos(柱)とgramma(記録)が語源で、柱で記録する図という意味だよ
← 用語集にもどる