GNUPLOTの第一歩

グラフの大きさを変更する

gnuplotで画面に表示されるグラフのサイズを変更できます。

また印刷時のグラフのサイズも変更できます。ただしeps形式で保存し てLaTeXに取りこんでグラフを印刷する場合はLaTeXの機能 を使って大きさを変更する ほうが楽でしょう。


画面に描くサイズの変更

ここで説明するset sizeによるサイズの変更は画面での表示だけでなく、 postscript形式のファイルに画像データを保存して印刷する時やeps形式のファイルに保存してLaTeXに取りこんだ時も有効です。

例えば、縦横を半分のサイズ(面積で1/4)にするには、set size で縦横 の縮尺を0.5に指定します。sin(x)のグラフの例になっていますが、も ちろんデータファイルのグラフ表示のときにも有効です。

      gnuplot> plot sin(x)
      gnuplot> set size 0.5, 0.5
      gnuplot> plot sin(x)

2つの0.5は、それぞれ横と縦の縮尺です。横と縦で違う値にしても構い ません。とくに次のように指定すると、グラフの縦横の長さが同じにな ります。

      gnuplot> set size 0.741, 1.0
      gnuplot> plot sin(x)

新しめのgnuplotではsizesquareにするこ とで、正方形のグラフにできます。

      gnuplot> set size square
      gnuplot> plot sin(x)

印刷時に変更

なにも設定せずにgnuplotで描いたグラフを印刷するとA4の用紙いっぱ いに一つのグラフが印刷されますが、この大きさを変更することができ ます。これには、前述のgnuplotが描くグラフのサイズ自体を変更する 方法と、この後に紹介するpsnupコマンドを使ってpostscript 形式のデータファイルを加工する方法があります。

psnupコマンドの使い方

psnupはpostscript形式の印刷用データの加工コマンドで、複数ページ を一枚の用紙に印刷することができます。例えば、sample.psの2ペー ジ分を1ページにまとめて印刷するには、

      $ psnup -nup 2 sample.ps > tmp.ps

を実行してから、tmp.psを印刷します。gvなどで結果を確かめてから印刷 するようにしましょう。比較的新しいバージョンのpsnupでは

      $ psnup -2 sample.ps > tmp.ps
で良いはずです。(例えば、Debian/GNU Linux 3.0のpsnupはそうです。) 詳しくはman psnupして、マニュアルを見てください。

もとのpostscriptファイルが奇数ページ分(1ページしかないとか)の場合 でも、うまく半分の大きさで印刷されるように縮小されます。

      $ psnup -nup 4 sample.ps > tmp.ps

とすれば4ページを1ページにまとめることもできます。

psnupの利用例

gnuplotのグラフの印刷にpsnupを使ってみます。

      gnuplot> set term postscript
      gnuplot> set output "graph.ps"
      gnuplot> plot sin(x)
      gnuplot> plot cos(x)

としgraph.psを印刷すれば、1ページ目にsinのグラフ、2ページ目に cosのグラフが印刷されます。そこでpsnupを使って

      $ psnup -nup 2 graph.ps > tmp.ps
としておいてtmp.psを印刷すれば、1枚の用紙に2つのグラフが印刷されることになります。
GNUPLOTの第一歩
小栗栖 修
メールアドレス: ogurisu[AT]kanazawa-u.ac.jp ([AT]を@におきかえてください)