gnuplotは対話型で使うのが一つのやり方ですが、これだとグラフを作るたびにいろいろなコマンドを打ち直さなければならず、現実的ではありません。この欠点はスクリプト形式を使うことで回避できます。スクリプト形式とはgnuplotのコマンドを予め保存したファイルを作りそれをgnuplotへ読み込ませることです。この方法により数々のデータ処理やグラフ描画を連続して行わせることができます。
この方法の長所としては、
などの点が上げられます。
gnuplotを使うときはぜひスクリプト形式で使うことをお勧めします。
スクリプト形式でgnuplotを使うには、まずはスクリプトファイルを準備する必要があります。まずはテキストファイルで以下のようなファイルを作り、それを例えばC:/gnuplot/というフォルダにtest.pltという名前で保存します。
set title "test of gnuplot script"
plot sin(x)
そして、gnuplotのプロンプトからload "C:/gnuplot/test.plt"と入力します。(もしくはcd "C:/gnuplot"と入力してC:/gnuplotフォルダに移動してからload "test.plt"とします。)wgnuplotを使用している場合はopenボタンをクリックしてファイル選択画面からtest.pltを選択する方法もあります。すると、以下のようなグラフが表示されるはずです。
このようにスクリプト形式を使うと、ファイルを読み込ませるだけでset title "test of gnuplot script"
という命令とplot sin(x)
という命令が順に連続してgnuplotに送られます。
上の例だけではあまりスクリプト形式のありがたみが判らないかもしれません。しかし、以下の例ではどうでしょうか? この全てのコマンドをグラフを作るたびに毎回入力していたのではさすがに大変ですが、スクリプトとして保存しておけばいつでもグラフを再描画することができるわけです。また、どんな処理をしたかも一目瞭然で、後から処理過程を検討する場合にも大いに役に立ちます。
set xrange [0:50]
set samples 500
set xlabel "time (sec)"
set ylabel "amplitude (V)"
set multiplot layout 2,1
theta=0.5*pi
tau=25
set title "test of gnuplot script - oscillation"
plot sin(x) title "input", sin(x-theta) title "output"
set title "test of gnuplot script - dumping oscillation"
plot sin(x) title "input", \
sin(x-theta)*exp(-x/tau) title "output"
unset multiplot
スクリプト形式でgnuplotを使うより詳細な説明はスタートガイドも御覧ください。