ヒストグラム(度数表)
概要
ある値の列からなるデータがあるとき, コレに関するヒストグラムを作成する. 直接的にその機能は gnuplot にはなく, 度数を計算する必要があるが, 次の方法を使うとうまくこれが gnuplot の機能で実現する.
手法
x:(1.0)
からなる折れ線グラフを
with frequency
で描くと重複した点の個数だけ y
を加算する.
これに with boxes
等の装飾を施すことでよくあるヒストグラムを描ける.
Example
データはソートしておいた方が無難.
x
の上に置く box は x
を中心とする幅を持った箱として描画されるので,
必要に応じて 0.5
だけずらすなどすると見やすくなる.
Source Code
width = 1.0
hist(x) = width * (floor(x / width) + 0.5)
set boxwidth width * 1.0
set xtics width
$data <<EOM
0
1
1
1
1
2
2
3
6
8
EOM
set xrange [0:10]
set yrange [0:]
set ytics 1
set grid
set style fill solid 0.5 border lc rgb '#55aaff'
plot $data u (hist($1)):(1) smooth frequency with boxes fillcolor '#55aaff' not