グラフソフト"gnuplot"の使用方法
1. はじめに
gnuplotは、与えられた関数やデータを基にしてプロットを行うツールである。科学技術系の分野では非常に良く用いられているツールであり、 各種プラットフォームに移植されています。gnuplotは、グラフ描画ソフトウェアであるため、グラフ描画用の様々な機能が用意されています。それに対 して、一般的にグラフ描画としてよく用いられるエクセルはグラフ描画機能を持つ表計算ソフトウェアであるために、論文や学会発表のグラフ作成には非常に多 くの手間を必要とします。
gnuplotの情報は、gnuplotの公式サイト gnulot homepage [URL 1] から手に入れることが出来ます。gnuplot の 英語版 FAQ は gnuplot homepage に掲載されています。FAQ の日本語訳は、新潟工科大学竹野研究室のウェブサイト[URL 2] で公開されています。その他の多くのウェブサイトでも gnuplot の解説ページがあります[URL 3-5、参考文献 1,2]。このページでは、gnuplot による簡単なグラフ表示についてのみ説明を行います。より詳しい説明等に関しては、参考サイト参考サイトおよび参考書籍を参照してください。
2. インストール
gnuplot は、各種プラットフォーム(OS)に移植されているのですが、ここでは Windows 上について簡単に説明します。Windows 用には、山賀さんのページ[URL 7]で公開されている gnuplot+ がオリジナルの gnuplot の日本語化と機能拡張が行われており、非常に便利です。gnuplot+ for Windows は、山賀さんのページにバイナリー・ファイルが用意されています。
- インストール・ファイル wgpl+w32.zip を山賀さんのページからダウンロードします。
- ダウンロードした zip ファイルを適当なファイルへ展開します。
- 展開したファイル内にある wgnuplot.exe がgnuplot の実行ファイルですので、ショートカットをデスクトップやスタートメニューを作成します。
3. gnuplot+ の起動
インストールしたファイル内にある wgnuplot.exe をダブルクリックします。または、作成したショートカットから gnuplot+ を起動します。情報処理センター内の端末には、gnuplot+ がインストールされており、「スタート」メニューから選択することが出来ます。
gnuplot+ for Windows の起動ウインドウを図1に示します。ウインドウの上部にメニューバーやツールバーが表示されています。これらを使うことによって、キーボードからコマンドを入力することなくマウスのみで操作することが出来ます。
4. 簡単なグラフの表示
まず、ウインドウ上で
gnuplot> plot sin(x)
と入力してください。 次に示すようにグラフが表示されます。
この例では、gnuplot に y=sin(x) のグラフを表示させています。ここで使用している plot コマンドは次のような書式で使用します。
plot expression
ここで expression には表示させるグラフの式を入力します。2次元グラフを作成する場合は、変数として x を使用します。
gnuplot では、複数のグラフを表示させることも簡単に出来ます。その場合は、plot コマンドを使用して、表示させたいグラフの式をカンマ( , )で区切って入力します。
plot expression1, expression2, ・・・
例えば、sin(x) と x を同時に表示させる場合には、以下のようにコマンドを入力します。
gnuplot> plot sin(x), x
その結果は次のように表示されます。
ここで、2つのグラフは色違いの実線で表示されています。このように、複数のグラフを表示させた場合には、異なる線色を用いて表示します。
5. データの描画
テキスト形式で書かれたデータファイル(ファイル名を output.txt とし、gnuplot の実行ディレクトリにあるものとする)をプロットします。
0.02 0.009048
0.04 0.016374
0.06 0.022221
0.08 0.026806
0.10 0.030314
データの部分にはそれぞれ1行の中に x と y の値のペアが記入されています。これが実際にプロットする座標値です。このように、1つのデータ点を表す座標値のペアは、必ず1行に書く決まりになっています。
このデータファイル output.txt をプロットします、次に以下のコマンドを入力してください。
gnuplot> plot "output.txt"
その結果は次に示すように表示されます。
ここで、グラフのスケールは、縦軸、横軸ともに、データがすべて収まる範囲に自動的に設定されています。
このように、データの表示には、plot コマンドを使用してデータファイルをダブルクォーテーション(" ")で囲んで指定します。またダブルクォーテーションの代わりに、シングルクォーテーション(' ')で囲んでもかまいません。
plot "data_file"
または
plot 'data_file'
ここではファイル名を直接指定していますが、ディレクトリ表現を含んだ指定も出来ます。
plot "C:/Documents and Settings/yoneda/My Documents\data.txt"
その結果は次に示すように表示されます。
表示したいデータが gnuplot の起動ディレクトリと異なる場所にある場合は、gnuplot の実行ディレクトリを変更する必要があります。gnuplot の実行ディレクトリの変更には、cd コマンドを使用します。
cd "directory"
ここで、directory にはディレクトリ名をダブルクォーテーションで囲んで指定します。また、現在の実行ディレクトリは、pwd コマンドで確認できます。
pwd
次は、実行ディレクトリを変更して確認した例です。
gnuplot> pwd
C:\Program Files\gp373w32
gnuplot> cd "../.."
gnuplot> pwd
C:\
gnuplot>
6. グラフのスタイル
gnuplot では、表示するグラフにさまざまな表示方式(スタイル)が用意されています。gnuplot で用意されているグラフのスタイルを表1に示します。
表1、グラフのスタイル
スタイル 説明 lines ライン表示 points データポイント表示 linespoints ラインとデータポイント表示 impulses インパルス表示 dots ドット表示 steps ステップ表示 fsteps ステップ表示(最初の点からステップが立ち上がる) histeps ステップ表示(点がステップの中心) errorbars 誤差グラフ xerrorbars 横方向の誤差グラフ yerrorbars 縦方向の誤差グラフ xyerrorbars 横及び縦方向の誤差グラフ boxes 棒グラフ boxerrorbars 誤差と棒グラフ boxxyerrorbars 誤差のボックス表示 candlesticks 変動のボックス表示 financebars 変動の横線表示 vector ベクトル表示
表示方式の指定には、plot コマンドのオプション with で指定する。
plot expression with styleplot "data_file" with style
関数やデータをラインのみで表示するには、オプション lines を使用します。関数の場合、グラフは滑らかな曲線で表示されます。また、データプロットの場合は、データポイントが直線で結ばれて表示されます。グラフをさまざまな点(マーク)で描くには、表示方式として points を使用します。表示形式に linespoints スタイルを指定すると、lines と points を両方使ってグラフが描かれます。この他にもインパルス表示(impulses)やステップ表示(steps, fsteps, histeps)が出来ます。
gnuplot で同じ座標軸上にグラフを2つ以上表示する場合、カラーディスプレイではグラフの線はそれぞれ異なる色(赤、緑、青など)で描かれます。白黒ディスプレイでは色別ではなく、さまざまな線種(実線、破線、1点鎖線など)で表示されます。gnuplot で用意されている線種や点種を確認するには、gnuplot のコマンド test を使用します。そのとき表示されるグラフは図9のようになります。
グラフに使う線や点は、グラフごとに自由に選ぶことが出来ます。これは plot コマンドのオプション with で表示方式と一緒に指定します。
plot expression with style line point
ここで、style には lines や impulses といった表示方式を入力します。その後に、線種(line)と点種(point)を順に数字で指定します。この線種と点種を示す数字は、図9のグラフの右端に表示される線種と点種の横の番号に対応しています。
次は、実際に線種と点種を変更してグラフを表示する例です。
gnuplot> plot cos(x) with linespoints 3 7
この例では、cos(x) のグラフが、3 の線種(点線または青色)と 7 の点種(〇)を使って表示されます。
リンク
- Gnuplot Central、URL=http://www.gnuplot.info/
- gnuplot-FAQ (日本語訳)、URL=http://takeno.iee.niit.ac.jp/~shige/unix/gnuplot/gnuplot.html#gp-FAQ-j
- gnuplot tips, URL=http://t16web.lanl.gov/Kawano/gnuplot/index.html
- 新潟工科大学 竹野研究室の gnuplot のページ、URL=http://takeno.iee.niit.ac.jp/~foo/gp-jman/gp-jman.html
- グラフは Gnuplot にお任せ、URL=http://ayapin.film.s.dendai.ac.jp/~matuda/Gnuplot/gnuplot.html
- 松阪大学 奥村先生の gnuplot page、URL=http://oku.edu.mie-u.ac.jp/~okumura/linux/gnuplot.html
- GNUPLOT 日本語化・機能拡張 (PLUS-enhanced) パッチ 公式サイト, URL=http://www.h2.dion.ne.jp/~yamaga/gnuplot/index.ja.html
参考書籍
- 矢吹道朗、大竹敢、"使いこなすgnuplot 改訂新版"、テクノプレス、2000
- 川原稔、"gnuplot パーフェクトマニュアル"、ソフトバンク、1999