【ひすとぐらむ】

ヒストグラム とは?

公開:
💡 データの「かたまり」がどこにあるかを棒の高さで見える化する
📌 このページのポイント
ヒストグラム — データの分布を見える化 リクエスト数 レスポンスタイム (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(記録)が語源で、柱で記録する図という意味だよ
← 用語集にもどる