人気ブログランキング | 話題のタグを見る
gnuplot 4.6での箱ひげ図の描画方法。。。
一般的なプロットはエクセルだけで描画可能なのだが、統計でよく使う「箱ひげ図」だけはデフォルトで描画困難である。株価チャート用のローソク図を利用する方法もあるのだが、本質的ではない。
フリーでやるならgnuplotを用いるのがもっともいいのだが、日本語のhelpでも分かりにくいところがある。(日本語のhelpはgnuplotをインストールしていなくてもgoogleで"gnuplot boxplot"にて検索すればひっかっかって来る。)

あれこれ試している内に、設定方法(制御方法)が分かったので、メモしておく。

補足・・・
gnuplotは昔使っていたのだが、ローソク図だけで箱ひげ図は入っていないと思い込んでいた。

当時購入した解説書
川原 稔 著:「whatis UNIXシリーズ、gnuplotパーフェクト・マニュアル」、1999年10月28日・初版(ソフトバンク・パブリッシング)
にも、記述がない。

しかし、バージョンアップに伴ってか、箱ひげ図(boxplot)を扱えるようになったようだ(もともと入っていたのなら、気がつかなかっただけなのだが。。。)

データはテキストファイル(c:/plot/data.txt)に入っていて、1列目にデータの区分、2列目にデータの値という形式で複数行あったとする。
たとえば、
data-a 12
data-a 13
data-a 23
data-a 11
data-a 10
data-a 9
data-a 11
data-a 13
data-a 14
data-a 13
data-a 11
data-b 20
data-b 23
data-b 21
data-b 22
data-b 21
data-b 22
data-b 24
data-b 20
data-b 19
data-b 18
data-b 19
data-b 3

とする。(行の順番に意味は無く、data-aとdata-bがごちゃ混ぜでも問題ない)

gnuplotで
gnuplot> set key off
gnuplot> plot "c:/plot/data.txt" using (1.0):2:(0):1 with boxplot
と入力すればwxWidgets terminalウィンドウ(以下、wxt)上に
gnuplot 4.6での箱ひげ図の描画方法。。。_b0032038_5151515.png

と描画される。
※using書式の詳細については、gnuplot付属の日本語マニュアル等を参照してください。
1項目目:x軸上、どこにプロットするかを決める。今回の場合、4項目目を指定しているので(1.0)は(0)でも(2)でも描画には影響がない。
2項目目:データ列の位置(2列目なので、2)
3項目目:箱ひげ図の箱の幅(デフォルトを使用するのであれば、0)
4項目目:データ区分(カテゴリ)を記述している列

(日本語)helpでは、"with boxplot"の表記がなく、そのままではデフォルトのプロットスタイルが使われてしまう。
最初の "set key off"は、描画されるグラフ内に「"c:/plot/data.txt" using (1.0):2:(0):1」と
いった注釈(説明)文が入るのを消す操作になる。

なお、テキストデータを開いていれば、データを修正し保存した後、wxt画面左端から2番目の「replot」ボタンをクリックするだけで、wxt上のグラフは自動的に更新される。
gnuplot 4.6での箱ひげ図の描画方法。。。_b0032038_5465796.png

後は、グラフタイトルとか、グラフの塗りつぶし、線の色、フォントの大きさ等をsetコマンドで整えていけば完成である。
よく使う設定はファイルに保存しておけば、次回以降同様の設定でグラフを描画できる。
gnuplot> save set 'ファイル名'
gnuplot> load 'ファイル名'

※gnuplotホームページ
http://www.gnuplot.info/
最新版のダウンロードについては上記サイトからsourcefoge.net内へリンクが張られている。
ちなみに、投稿時の最新のウィンドウズ版ダウンロードファイル名は「gp460-win32-setup.exe」
※gnuplot関連サイト
情報サイト
http://takeno.iee.niit.ac.jp/~shige/unix/gnuplot/gnuplot.html
日本語マニュアル関係のサイト
http://takeno.iee.niit.ac.jp/~foo/gp-jman/
↑どちらも新潟工科大学・情報電子工学科・竹野氏のサイトになります。


そうそう。。。
なんでgnuplotかといえば、実はmaxima5.27.0(wxMaxima 12.04.0)の存在を最近になって知り、wxMaxima 12.04.0のサイドバーの「統計処理」に「箱ひげ図」というボタンがあるのに気がついていろいろと操作していたのだが、デフォルトの設定ではデータを設定しにくかったり、うまく描画できなかったりしたことと、「外れ値」を処理できなかったことにある。
wxmaximaでの描画サンプル(wxboxplotでは描画できなかったので、boxplotコマンドに切り替えている)
gnuplot 4.6での箱ひげ図の描画方法。。。_b0032038_6553868.png


ただし、wmMaximaでは、関数のプロットが非常に簡単にできるようになっています。
gnuplot 4.6での箱ひげ図の描画方法。。。_b0032038_7373578.png

by kisugi_jinen | 2012-06-10 06:29 | program。。。 | Trackback(2) | Comments(0)
Tracked from 来生自然の。。。 at 2012-06-22 06:51
タイトル : gnuplot4.6での箱ひげ図描画用メニュー変更。。。
gnuplot 4.6での箱ひげ図の描画方法。。。 にて取り上げたgnuplotでのboxplot(箱ひげ図)であるが、wxWidgets terminalウィンドウ(以下、wxt)での入力補助メニューが未対応であった。 無論、全てを手入力で入れていってもいいのだが、コマンドを暗記していなければならず、たまに使うときにマニュアルを引くのは手間である。 メニュー部分については、 [インストール先]/bin/wgnuplot-ja.mnu というファイル(一種のマクロ)の内容を編集することで...... more
Tracked from 来生自然の。。。 at 2012-07-01 05:38
タイトル : 箱ひげ図・boxplotで芋づる式。。。R:臨床統計の本..
SやRは自由度が高すぎて、敷居の高い「統計を専門にする方のためのプログラミング可能な高級統計処理ソフト」と捉えていた。テキスト入力によるコマンド列で次々と処理していかねばならず、「目的との間に介在する煩雑な操作」がイメージされていたからである。 プログラミング好きの私としては、ある意味似つかわしいソフトなのだが、やはりコマンド入力にて一連の操作が必要なのは「障壁」になる。 統計処理は データ入力 → 統計処理方法の選択 → 統計処理とグラフ生成 → プレゼン資料に貼り付け といった手順...... more
<< 間接自殺。。。その虚と実。。。 沖縄復帰40周年。。。知的境界... >>



「ともし火に我もむかはず燈(ともしび)もわれにむかはず己がまにまに」(光厳院) --- 厳然とした境界を越え得ぬとき、その上でなお、越えうるものがあるとすれば、それは「情」である。

by kisugi_jinen
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
検索
カテゴリ
最新の記事
お知らせとリンク。。。
お知らせ
●コメントスパム対策のため、承認制に変更しました(2010.09.29)
●トラックバックのリンクチェック機能を追加しました。excite以外からのトラックバックをされる場合、当該記事へのリンクを埋め込んでください。
リンク
ゲストブック
---Yahooジオシティーズ終了に伴い、利用できなくなっています。
来生自然のホームページ
---Yahooジオシティーズ終了に伴い、利用できなくなっています。
鉄鼠
---「考える」ということに向き合う。。。
Genxx.blog
移転後http://blog.genxx.com/
---「情」を含めて専門的な立場から「こころ」を模索し続けるGenさんのブログ。。。
研幾堂
---山下裕嗣氏による哲学のサイト。以前、形而上学についてやりとりさせていただいた。
記事ランキング
最新のコメント
グローバル大納言さま ..
by kisugi_jinen at 00:13
最近はChatGPTや生..
by グローバル大納言 at 09:12
花の名前も、花言葉も知ら..
by kisugi_jinen at 07:26
> hatekatsu卿..
by kisugi_jinen at 10:05
ふるさととは根源的で絶大..
by hatekatsu卿 at 11:18
最新のトラックバック
以前の記事
フォロー中のブログ
外部リンク
ブログパーツ
ライフログ
ファン
ブログジャンル
画像一覧