gnuplot でヒストグラム・度数分布多角形づくり
度数分布多角形(度数折れ線)が綺麗に作れるフリーソフトを探していたら、gnuplotでも度数分布多角形がかけることを知って、衝撃を受けた今日このごろです。しかもヒストグラムと重ねてできたりしてGood。
エクセルやcalcなどの表計算ソフトでも作れないことはないんですが、やはり見た目がね・・・。
ということで、今回はgnuplotで度数分布多角形 & ヒストグラムづくりネタ。関数の時と同様、折れ線自体の作成は難しくは無いんですが、格子線を表示させるための下地づくりがやはり面倒だったので、そのメモ。ちなみに作った下地は自分仕様なので、細かな注文は受け付けられません。(あんまり詳しくないので、質問されてもたぶん、十中八九答えられない・・・と思います。)
ちなみに「インストールの仕方」や基本的な「起動の仕方」については
「gnuplot インストールメモ」や「gnuplot で比例・反比例のグラフを作ろう gnuplotの起動〜直線(一次関数)を表示させてみる」を参考にしてみてください。
それでは基本的な使い方はわかっているという仮定の元、下地づくりの前に、ヒストグラムの作り方の基本から。
次のものは自身で用意する必要があります。
○ヒストグラム・度数分布多角形の元の資料(データ)
元データをスペース、または、タブで数値を区切ってテキストファイルで保存します。
上記の例だと次のようなデータを使用しています。
142.5 0
147.5 7
152.5 16
157.5 17
162.5 8
167.5 9
172.5 3
177.5 2
182.5 0
1列目は階級値、2列目は階級の度数で設定しています。
データをエクセルなどの表計算ソフトで作成した場合は、メモ帳(などのエディタ)にコピペして保存すれば良いです。
ファイル名は何でも良いですが、保存場所はLinux系であれば、homeディレクトリに、Windowsではパスが通っているディレクトリ(フォルダ)です。
さて、今回はこのデータを『test.txt』名で保存したとして話を続けます。
〔度数分布多角形や、ヒストグラムを表示させてみる〕
gnuplotを起動させて次のようなコマンドを打つと度数分布多角形がかけます。
plot "./test.txt" using 1:2 with linespoints
・・・。いろいろツッコミどころ満載ですが、とりあえずコマンドの説明をば。
『plot "./test.txt"』の部分はカレントディレクトリ(./ はカレントディレクトリを指定している) にある test.txt ファイルのデータをプロット(点を打つ)するという意味です。
(カレントディレクトリとはなんじゃらほい、という人はページ下に載せた外部サイトが詳しいです。)
『using 1:2』の部分は、test.txt ファイルの1列目を横軸(x軸)の数値として扱い、2列目を縦軸(y軸)の数値として扱うということです。
『with linespoints』は、「折れ線+点」で表すという意味です。
これを『with lines』とすると、「折れ線のみ」に。
これを『with boxes』とすると、ヒストグラムになります。
度数分布多角形とヒストグラムを重ねるには、カンマで区切って次のように入力すると可能です。
plot "./test.txt" using 1:2 with linespoints , "./test.txt" using 1:2 with boxes
さて、これだけでは見た目上アレなので、細かなところをいろいろと変更します。
好みは人それぞれなので、数値は便宜ご自身で変更してください。
〔目次〕
(1)gnuplot でヒストグラム・度数分布多角形づくり
(2)ヒストグラム:箱の色を変える・スタイルの設定
(3)度数分布多角形:点の形を変える/線の色、太さを変える
(4)ヒストグラム・度数分布多角形の下地づくり
(他)gnuplotで、比例・反比例・放物線のグラフの作成
(他)gnuplot で eps 取扱いメモ
● ブログ記事目次
【外部サイト】
ディレクトリとパス
http://www.cc.kyoto-su.ac.jp/~hirai/text/path.html
ファイル・ディレクトリの指定方法
http://cns-guide.sfc.keio.ac.jp/2002/2/3/3.html
コンピュータの基本操作/コンピュータにおける情報構造/ファイル・ディレクトリの指定方法
http://cns-guide.sfc.keio.ac.jp/2001/2/3/4.html#SECTION03342000000000000000