関数のグラフを描画をするにはコマンドplotを使います. たとえば, gnuplotのウィンドウ内で plot␣sin(x)
←- (8.23)
と入力すると,図8.37のように正弦関数のグラフが描画されます. 横軸の範囲と縦軸は適当に調整されます.
一方,必要な場合には, x軸とy軸の範囲を指定することもできます. このためには, plot␣[xの下限:xの上限]␣[yの下限:yの上限]␣関数
←- (8.24)
のようにします. たとえば, 正弦関数を横軸の範囲を[0,2π]に取ってプロットしたいときには, plot␣[0:2*pi]␣[-1:1]␣sin(x)
←- (8.25)
8.8. gnuplot: 2次元および3次元グラフ作成ツール 115
図8.37: 正弦関数のグラフ
のようにします. ここに,piは円周率πに対応するgnuplotの定数です.
なお, xの下限, xの上限の一方を省略して書くこともできます. また,上記ではplotの最も簡単な使い方 のみ紹介しましたが, plotには非常に数多くのオプションがあります. これらについてはマニュアルなどを 参照して下さい.
8.8.5 eps ファイルに保存する
描画したグラフをLATEXで処理可能なeps (encapsulated PostScript)形式で保存するには, まず set
terminalというコマンドを使って出力データの形式をPostScript形式に変更します.
set␣terminal␣postscript␣eps
←- (8.26)
キーボードからの入力に誤りがなければ, Options are ’eps noenhanced monochrome dashed defaultplex "Helvetica-Ryumin" 14’
とうようなメッセージが画面に表示されます.
続いて, set outputというコマンドを使って出力ファイルの名前を指定します. ここでは,test.epsとし ておきましょう.
set␣output␣’test.eps’
←- (8.27)
ここまでの手順が終わった状態で replot
←- (8.28)
と入力すると,グラフがtest.epsというファイルに保存されます. ここまでの作業が終わったときのgnuplot のウィンドウの内容を図8.38に示します.
8.8.6 非対話的な gnuplot の実行
gnuplotコマンドをファイルにあらかじめ書いておいて,そのファイルを実行することもできます.
以下のような内容のファイルがカレントディレクトリに用意されているものとしましょう.
plot sin(x) pause -1
ファイル名はtest.gnuplotとします.
このようなファイルを準備した上でktermなどで gnuplot␣test.gnuplot
←- (8.29)
図8.38: ファイルへの保存が終わったときのgnuplotのウィンドウの状態
と入力すると,先ほどと同じように正弦関数のグラフが画面に描画されます.
なお,非対話的にgnuplotを実行した場合には, gnuplotはすべてのコマンドを実行し終わるとただちに 終了してしまいます. 上の例で
pause␣-1 (8.30)
とある部分は,ユーザが
Enterキーを押すまでgnuplotが終了しないようにするためのものです.
8.8.7 ファイルからコマンドを実行する
gnuplotを起動し, gnuplotのウィンドウ内でコマンドloadを実行することでも,あるファイルに書かれ
たコマンド群を実行することができます. コマンドload を使うときには, 引数としてファイル名を単一引 用符「’」で囲って指定します.
例として, 先ほどの例と同じファイルtest.gnuplotを実行する場合を考えましょう.
このためには,
load␣’test.gnuplot’
←- (8.31)
と入力します.
8.8.8 コマンドのファイルへの保存
コマンドsaveを実行すると,最も最近のコマンドplotに関連した一連のコマンド群をファイルに保存で きます.
コマンドsaveを使うときも,引数としてファイル名を単一引用符「’」で囲って指定します.
例として, 今実行したコマンドをtest2.gnuplotというファイルに保存してみます.
save␣’test2.gnuplot’
←- (8.32)
コマンド saveを実行した場合には, gnuplotが標準で設定するいろいろなパラメータの内容がすべてファ イルに書き込まれるため,ファイルの内容はかなり複雑になります.
8.8.9 データファイルのプロット
データファイルとは,実験の測定値や統計データのような数値が規則正しく並べられたファイルのことを いいます. 本節では,データファイルに記載されたデータ点からグラフを作成する方法について説明します.
データファイルをプロットするときには, plot␣’ファイル’
←- (8.33)
8.8. gnuplot: 2次元および3次元グラフ作成ツール 117 とします. ただし,「ファイル」と書かれた部分にはデータファイルの名前が入ります.
例として,図8.39のような単純なデータファイルがあった場合を考えます. ファイル名を’sample1.dat’と します. (実際に以下を実行してみたい人は, Muleなどを使って, sample.datという名前で,図8.39のよう な内容を持つファイルを作成して下さい).
100 120 100 110 90
図8.39: データファイルsample.datの内容
このデータファイルをプロットするには, plot␣’sample.dat’
←- (8.34)
とします. すると,図8.40のようなグラフが描画されます.
90 95 100 105 110 115 120
0 0.5 1 1.5 2 2.5 3 3.5 4
’sample.dat’
図8.40: データファイルsample.datのプロット(1)
次に,データ点のあいだを線で結んでみます. このためには, plot␣’sample.dat’␣with␣lines
←- (8.35)
とします. すると,図8.40のようなグラフが画面に描画されます.
90 95 100 105 110 115 120
0 0.5 1 1.5 2 2.5 3 3.5 4
’sample.dat’
図8.41: データファイルsample.datのプロット(2)
なお,データファイルは以下に述べるような書式および規則にしたがって作成され, gnuplotによって解釈 されます.
• 1行中に複数の数値が空白で区切って並べられる
• ふつうは1行中にグラフのx座標とy座標を空白で区切って並べられる
• x座標を省略して1行に数値を1個だけ書いた場合, gnuplotはこのデータファイルのx座標を0から 始まる整数であると解釈して実行する
これ以外に,データ点のあいだをなめらかな曲線で結んだり,データ点の近くを通過するなめらかな曲線 を引いたり, 最小2乗法によってデータに直線や曲線をあてはめたりすることもできます.
gnuplotのより詳細な使い方についてはマニュアルなどを参照して下さい.
8.9 gimp
gimpは画像処理のための極めて多様な機能を持った,フリーのペイント系の描画ツールです. ここに,ペ イント系のツールとは,描画された図形を点の集まりとして記録するツールのことをいいます. このような ツールには, 図を拡大縮小すると輪郭がぎざぎざになるという特徴があります.
gimpは, 写真などをパソコンで取り込んで特殊加工するといったような高度な処理に適したツールであ り,能力的には市販のフォトショップという画像処理用の極めて高性能のソフトウエアに匹敵する強力なツー ルなのですが,あまりに機能が多すぎるため,実験レポート作成などより「素朴な」描画で事足りる場合に はややオーバースペックです.
よって,この講義では, gimpの起動法と終了法を紹介するのみとし,具体的な操作法について触れません.
コンピュータ室にgimpの日本語マニュアルを印刷したものは置いてあるので,興味のある人は読んでみて 下さい.
gimpを起動するときには, ktermなどのウィンドウで gimp
←- (8.36)
と入力します. また, gimpを終了するときには, gimpのウィンドウにマウスカーソルが入っている状態で,
C-q (8.37)
と入力します.
119