第3回 gnuplotの使い方
(1/2)
1.gnuplotの基本操作 物理の研究において、グラフを書く技術は論文作成や説得力のあるプレゼンテーションをする上でとても重要なものです。Unix系のシステムにはgnuplotというプロット作成ソフトがあり、これを使うことで論文に載せられるようなきれいなグラフを作成することができます。 |
a) gnuplotの起動・終了とプロットの作成 |
まずターミナルを使って、Desktopに作成したcompphysのディレクトリに移りましょう。そこで以下のように「gnuplot」と入力して、enterを押してみましょう。するとgnuplotが起動します。
次に、このgnuplot上で早速関数をプロットしてみましょう。「plot sin(x)」と打ってenterを押しましょう。
すると次のような画面で、sin(x)のプロットが表示されます。
このように、gnuplotでは簡単な操作できれいなグラフを作成することができます。 gnuplotを終了するには、quit [enter]とします。
以下では、より詳細な使い方を解説していきます。 (quitしたままでは困るので、もう一度gnuplotを起動してください。) |
b) グラフの重ね書き |
先ほど書いたsin(x)の上に、別の関数を重ね書きしたいときはreplotコマンドを使います。「plot sin(x) [enter]」とした後に、「replot cos(x) [enter]」としてみましょう
すると、以下のようにcos(x)も同時に表示されます。
このように、replotコマンドを使えば簡単にグラフを重ね書きすることができます。 練習問題
|
c) グラフの表示区域の設定 |
さて、sqrt(x)やlog(x)といった関数は負のxに対しては定義されていませんから、それを表示する場合はxが正の領域だけを表示させるのが普通です。このような「グラフの表示区域の設定」は以下のように行うことができます。
この中で、[0: ]がxの表示域を示しています。一般には[a:b]の形で入力することで、xがaからbまでのグラフを表示することができます。ただし上の例の[0: ]のように、片方を空欄にすることもできて、その場合はデフォルトの設定が適用されます。 y方向の表示区域も同様にして設定することができます。ここでは[0:4]としてみましょう。
さて、正しく設定されたか、グラフをプロットして確かめてみましょう。ここではsqrt(x)をプロットしてみましょう。
正しく設定できているようです。設定をデフォルトに戻したい場合はreset [enter]としましょう。 練習問題
|
d) グラフのラベル・キー設定 |
論文に載せるグラフには、グラフの縦軸と横軸が表す変数名を書いておく必要があります。これは以下のように、set xlabelというコマンドを使って設定することができます。
ここでは、x軸のラベルを単に「x」、y軸の名前を「sin(x)」として、sin(x)をプロットみました。(x,yの範囲は一度resetして、デフォルトの設定を使っています。)プロットの結果は以下の通りです。
確かに軸のラベルが設定どおりになっていますね。 さて、図の右上に、sin(x)と書かれていますが、これはもちろん「図中の線がsin(x)を表すよ」という説明として書かれているわけです。この説明部分は「key(キー)」と呼ばれます。しかし、場合によってはこのkeyの内容も自分の思うように変更したい場合もあります。この場合はplot sin(x)としていたところを、以下のように変更します。
すると、以下のようにkeyの内容も変更することができます。 練習問題
|
e) 関数の定義 |
|
f) 出力ファイルの設定 |
|