グラフソフト"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 は、山賀さんのページにバイナリー・ファイルが用意されています。

  1. インストール・ファイル wgpl+w32.zip を山賀さんのページからダウンロードします。
  2. ダウンロードした zip ファイルを適当なファイルへ展開します。
  3. 展開したファイル内にある wgnuplot.exe がgnuplot の実行ファイルですので、ショートカットをデスクトップやスタートメニューを作成します。

 

3. gnuplot+ の起動

 

 インストールしたファイル内にある wgnuplot.exe をダブルクリックします。または、作成したショートカットから gnuplot+ を起動します。情報処理センター内の端末には、gnuplot+ がインストールされており、「スタート」メニューから選択することが出来ます。

 gnuplot+ for Windows の起動ウインドウを図1に示します。ウインドウの上部にメニューバーやツールバーが表示されています。これらを使うことによって、キーボードからコマンドを入力することなくマウスのみで操作することが出来ます。

 

図1、gnuplot+ for Windows の起動画面
図1、gnuplot+ for Windows の起動画面

 

4. 簡単なグラフの表示

 

 まず、ウインドウ上で

 

 

      gnuplot> plot sin(x)


 

と入力してください。 次に示すようにグラフが表示されます。

図2、sin(x) のグラフ
図2、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


 

 その結果は次のように表示されます。

図3、sin(x) と x の二つのグラフを表示する例
図3、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"


 

 その結果は次に示すように表示されます。

 

図4、データ(output.txt)を表示する例
図4、データ(output.txt)を表示する例

 

ここで、グラフのスケールは、縦軸、横軸ともに、データがすべて収まる範囲に自動的に設定されています。

 このように、データの表示には、plot コマンドを使用してデータファイルをダブルクォーテーション(" ")で囲んで指定します。またダブルクォーテーションの代わりに、シングルクォーテーション(' ')で囲んでもかまいません。

 

  
   
plot "data_file"

           または

    plot 'data_file' 


 

 ここではファイル名を直接指定していますが、ディレクトリ表現を含んだ指定も出来ます。

 

  
    plot
"C:/Documents and Settings/yoneda/My Documents\data.txt" 


 

 その結果は次に示すように表示されます。

 

図5、データ(output.txt)を表示する例
図5、データ(output.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 style

    plot "data_file" with style


 

 関数やデータをラインのみで表示するには、オプション lines を使用します。関数の場合、グラフは滑らかな曲線で表示されます。また、データプロットの場合は、データポイントが直線で結ばれて表示されます。グラフをさまざまな点(マーク)で描くには、表示方式として points を使用します。表示形式に linespoints スタイルを指定すると、lines と points を両方使ってグラフが描かれます。この他にもインパルス表示(impulses)やステップ表示(steps, fsteps, histeps)が出来ます。

 

図6、linespoints スタイルの例
図6、linespoints スタイルの例
図7、impulses スタイルの例
図7、impulses スタイルの例
図8、steps スタイルの例
図8、steps スタイルの例

 

 gnuplot で同じ座標軸上にグラフを2つ以上表示する場合、カラーディスプレイではグラフの線はそれぞれ異なる色(赤、緑、青など)で描かれます。白黒ディスプレイでは色別ではなく、さまざまな線種(実線、破線、1点鎖線など)で表示されます。gnuplot で用意されている線種や点種を確認するには、gnuplot のコマンド test を使用します。そのとき表示されるグラフは図9のようになります。

 

図9、線と点の例(testコマンド)
図9、線と点の例(testコマンド)

 

 グラフに使う線や点は、グラフごとに自由に選ぶことが出来ます。これは 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 の点種(〇)を使って表示されます。

図10、線種と点種を変更する例
図10、線種と点種を変更する例

 

リンク

  1. Gnuplot Central、URL=http://www.gnuplot.info/
  2. gnuplot-FAQ (日本語訳)、URL=http://takeno.iee.niit.ac.jp/~shige/unix/gnuplot/gnuplot.html#gp-FAQ-j
  3. gnuplot tips, URL=http://t16web.lanl.gov/Kawano/gnuplot/index.html
  4. 新潟工科大学 竹野研究室の gnuplot のページ、URL=http://takeno.iee.niit.ac.jp/~foo/gp-jman/gp-jman.html
  5. グラフは Gnuplot にお任せ、URL=http://ayapin.film.s.dendai.ac.jp/~matuda/Gnuplot/gnuplot.html
  6. 松阪大学 奥村先生の gnuplot page、URL=http://oku.edu.mie-u.ac.jp/~okumura/linux/gnuplot.html
  7. GNUPLOT 日本語化・機能拡張 (PLUS-enhanced) パッチ 公式サイト, URL=http://www.h2.dion.ne.jp/~yamaga/gnuplot/index.ja.html

 

参考書籍

  1. 矢吹道朗、大竹敢、"使いこなすgnuplot 改訂新版"、テクノプレス、2000
  2. 川原稔、"gnuplot パーフェクトマニュアル"、ソフトバンク、1999