こんばんは。
あるデータの分析で、Octaveを使ってヒストグラムをたくさん作図する機会があった。たまにしか使わず忘れそうなので、メモしておきます。
Octaveでのヒストグラムの作成
あるデータベクトルxに対して、ヒストグラムを書く場合、histコマンドを使います。
例えば、xを平均0、標準偏差1の正規乱数として、ヒストグラムを作ってみます。
>x=randn(1000,1);
>hist(x)
2つ目の引数でビンの数(横軸の分割数)を指定できます。(デフォルトは10)
また、3つ目の引数をすると、縦軸を正規化することができます。サンプル数の異なる2つのヒストグラムを重ねる際など、それぞれを1で無次元化したもので重ねる際に使います。
上の図を20分割にし、さらに全体を1で正規化してみると、以下のようになります。
>hist(x,20,1)
色や線種の指定
ヒストグラムの色は、”facecolor”で指定できます。また、各バーの外枠は”edgecolor”,”Linestyle”,”Linewidth”で色・線種・太さを指定できます。
上のヒストグラムを、色は青、外枠は赤点線・太さ2にしてみます。
>hist(x,20,1,”facecolor”,”b”,”edgecolor”,”r”,”Linestyle”,”–“,”Linewidth”,2)
2つのヒストグラムを重ねたい場合、色は塗りつぶさず外枠だけにしたいときがあります。そんなときは、”facecolor”を”none”と指定します。
>x=randn(1000,1) %平均0の正規分布
>y=randn(1000,1)+1 % 平均1の正規分布
>hist(x,20,1,”facecolor”,”none”,”edgecolor”,”b”,”Linestyle”,”–“,”Linewidth”,2)
>hold on
>hist(y,20,1,”facecolor”,”none”,”edgecolor”,”r”,”Linestyle”,”:”,”Linewidth”,2)
以上、Octaveでのヒストグラム作図についてもメモでした。