第1章(基本操作)

gnuplot-calculus (2011-07-07 09:41)
1
目次
第1章
Gnuplot の基本操作
3
1.1
Gnuplot をはじめる前の準備ステップ A と B . . . . . . . .
3
1.2
Gnuplot のインストールと設定 . . . . . . . . . . . . . . .
5
1.3
Gnuplot の起動と終了 . . . . . . . . . . . . . . . . . . . .
7
◎— 現在地 (pwd) . . . . . . . . . . . . . . . . . .
8
◎— 場所の移動 (cd) . . . . . . . . . . . . . . . . .
9
◎— 終了 (exit, quit, q) . . . . . . . . . . . . . . .
10
1.4
Gnuplot の基本操作 . . . . . . . . . . . . . . . . . . . . . 10
◎— 関数を与えてグラフを描くコマンド (plot) . . .
10
◎— 過去に入力したコマンドの再利用( Ctrl + P ,
Ctrl + N ) . . . . . . . . . . . . . . . . 12
◎— データファイルの読み込み (plot · · · using · · ·
with · · · ) . . . . . . . . . . . . . . . . . . 12
◎— 世界地図データファイルの読み込み . . . . . . .
15
◎— 単項・2 項演算子 (+, -, *, /, **, %, !) . . . . .
17
◎— Gnuplot を電卓として使う (print) . . . . . . .
19
◎— 画像ファイルに出力する (set term, set output)
20
◎— ヘルプ機能 . . . . . . . . . . . . . . . . . . . .
23
gnuplot-calculus (2011-07-07 09:41)
gnuplot-calculus (2011-07-07 09:41)
3
第1章
Gnuplot の基本操作
あなたのユーザー名を
you
とする.ユーザー名は「私」でも「わたし」でも「僕」でもよいのだが,半
角英数字をおすすめする.文字化けによる誤作動を防ぐためである.ユー
ザー名 you のあなたには,まず, ステップ A と ステップ B の 2 つの作業
をしておいてもらいたい.この作業によって,gnuplot を円滑に用いること
ができるようになる.その後, ステップ 1 ∼ ステップ 3 の 3 段階の作業
を踏んで,gnuplot が自在に使えるようになるための設定が完了する.
以下の話は,Microsoft Windows 7 の OS 上における話を念頭において
いるが,Windows XP や Unix や Mac などの他の OS 上においても手法が
異なるだけでやるべきことは同じであるので,類推して準備されたい.
1.1 Gnuplot をはじめる前の準備ステップ A と B
まず,ファイル(file)の拡張子を見えるようにする.ファイルには,基本
的に,
名前. 拡張子
gnuplot-calculus (2011-07-07 09:41)
4
第 1 章 Gnuplot の基本操作
というファイル名が付けられており,用途によって拡張子を区別している.
例えば,拡張子が.doc, .docx のファイルは Microsoft Word 用,.xls,
.xlsx は Microsoft Excel 用,.jpg は画像ファイル,.txt はテキストファ
イル,といった具合である.(拡張子は半角英数 3 文字か 4 文字の場合が多
い.)したがって,拡張子が見かけ上隠されていると,ファイルの種類の欄
の表示からファイルの用途を判断することになる.それで十分な場合も多
いから,最初の状態では拡張子は隠されているのだが,これから行う作業
においては,その気遣い(俗にいう「おせっかい機能」)は逆に不都合であ
る.よって,gnuplot の機能とは無関係だが,以下の (1)∼(5) をおこなって
おく.
ステップ A ・全てのファイルの拡張子の表示
(1) [スタート] → [コントロールパネル] に入る.
(2) 右上の表示方法を [小さいアイコン] にする.
(3) [フォルダーオプション] をクリックする.
(4) [表示] タブをクリックする.
(5) [詳細設定] の下から 3 行目の [登録されている拡張子は表示しない]
のチェックをはずして,[適用 (A)] → [OK] とクリックする.
次に,以下のように gnuplot 用のファイルばかりを置いておく専用のフォ
ルダー(folder)を作る.これから gunuplot のプログラムファイルを沢山
作っていくので,それらを整理して保存しておくための場所である.
gnuplot-calculus (2011-07-07 09:41)
1.2 Gnuplot のインストールと設定
5
ステップ B ・作業フォルダーの作成(例)
例えば,ユーザー名 you のあなたのマイドキュメントに,例えば,
gnu-files なるフォルダーを作る.
▶ コンピュータ ▶ ローカルディスク(C:) ▶ ユーザ ▶ you ▶
マイドキュメント ▶ gnu-files
というパス(path)が表示されるが,実は,
C:Y
=UsersY
=youY
=DocumentsY
=gnu-files
という場所のことである.
もちろん,マイドキュメントの中でなくてもよいし,gnu-files という
フォルダー名でなくてもよい.あなた you が納得するどこかに,作業用の
フォルダーを作っておく.ただし,フォルダー名に日本語が入らないように
しておくように注意しよう.例えば,
良くない例 1
C:Y
=UsersY
=あなた Y
=DocumentsY
=gnu-files
とか,
良くない例 2
C:Y
=UsersY
=youY
=DocumentsY
=ぐにゅぷろっと
などというフォルダー名は避ける.基本的に,英語やローマ字などの「半角
英数字」を使うようにする.
1.2 Gnuplot のインストールと設定
いよいよ gnuplot のダウンロードと設定を行おう.
gnuplot-calculus (2011-07-07 09:41)
6
第 1 章 Gnuplot の基本操作
ステップ 1 ・gnuplot のダウンロードと展開
gnuplot(グニュプロット)のホームページ
gnuplot homepage
http://www.gnuplot.info/
にいき,見出し Current release is 4.4.3 内のリンク
Download from SourceForge
http://sourceforge.net/projects/gnuplot/files/
から,
[gnuplot] → [4.4.3]
のようにリンクを辿って,最新版の Windows 用の gnuplot(2011 年
6 月 22 日現在,バージョン 4.4.3 の gp443win32.zip が最新のファイ
ル)をダウンロードして,それを展開する.
すると,gnuplot フォルダーが生成され,その中には,
binary, contrib, demo, docs, license
の 5 つのフォルダーと,BUGS, ChangeLog, Copyright, INSTALL, NEWS,
README, README.1ST, README.Windows, VERSION などのファイルが含ま
れている.
ステップ 2 ・gnuplot フォルダーの置き場所(例)
gnuplot フォルダーを,例えば,
▶ コンピュータ ▶ ローカルディスク(C:) ▶ Probram Files
の中に移動する.つまり,以下の場所となる.
C:Y
=Program FilesY
=gnuplot
gnuplot-calculus (2011-07-07 09:41)
1.3 Gnuplot の起動と終了
7
binary フォルダーの中の
wgnuplot.exe
が Windows 用の gnuplot の実行ファイルである.(他にも,gnuplot.exe
など,.exe という実行ファイルがいくつかあるが,それらの用途について
は,README.Windows で説明されている.)
ステップ 3 ・ショートカットの作成と作業フォルダーの登録
ステップ B に お い て 作 成 し た 作 業 フ ォ ル ダ ー gnu-files の 中 に
wgnuplot.exe のショートカットを作成する.さらに,wgnuplot.exe
を右クリックし,
[プロパティ (R)] → [ショートカット(タブ)]
にある,[作業フォルダー (S)] の右のボックス欄
の中
に, ステップ B で作った作業フォルダーのパス
C:Y
=UsersY
=youY
=DocumentsY
=gnu-files
をコピー&ペーストする.
さて,なんだかんだと,上記のように Windows 7 の上にどうにかインス
トールできたとして,そこから話をはじめよう.
1.3 Gnuplot の起動と終了
ステップ B において作成した作業フォルダー gnu-files のショート
カットを,デスクトップやタスクバーに置いておくと便利である.
フォルダー gnu-files を開いて,wgnuplot.exe をダブルクリックする
と(あるいは Enter キーを押せば)
,
gnuplot-calculus (2011-07-07 09:41)
8
第 1 章 Gnuplot の基本操作
G N U P L O T
Version 4.4 patchlevel 3
last modified March 2011
System: MS-Windows 32 bit
Copyright (C) 1986-1993, 1998, 2004, 2007-2010
Thomas Williams, Colin Kelley and many others
gnuplot home:
faq, bugs, etc:
immediate help:
plot window:
http://www.gnuplot.info
type "help seeking-assistance"
type "help"
hit ’h’
Terminal type set to ’wxt’
gnuplot> _
という表示とともに gnuplot が起動する.
一番最後の,
gnuplot> _
の「 _ 」部分(カーソル)は点滅しており,ここにいろいろな命令(コマン
ド)を入力していく.基本は,直接打ち込んで行けばよいのであるが,一度
打ち込んだ命令やパラメータを変更・加筆・修正したい場合や,似たような
命令が繰り返される場合,あるいは,命令が多い場合などに対応するため,
あらかじめ入力したいコマンドを並べて書き込んでおいたファイルを作っ
ておき,それを読み込むという方法をとることを強くおすすめする.そのた
めに, ステップ B で作業フォルダー gnu-files を作ったのである.
◎— 現在地 (pwd)
まず,確認作業.現在作業している場所(current working directory)を
以下のように表示する(print working directory)
.
gnuplot> pwd
そしたら,
gnuplot-calculus (2011-07-07 09:41)
1.3 Gnuplot の起動と終了
9
C:Y
=UsersY
=youY
=DocumentsY
=gnu-files
gnuplot>
と表示されるはずである.
◎— 場所の移動 (cd)
例えば,gnu-files の中にさらに新しいフォルダー functions を作った
としたら,その場所は,
C:Y
=UsersY
=youY
=DocumentsY
=gnu-filesY
=functions
であるだろう.現在地 C:Y
=UsersY
=youY
=DocumentsY
=gnu-files から,そこ
に移動したかったら,ディレクトリを変更すればよい(change directory)
.
gnuplot> cd ’functions’
あるいは,
gnuplot> cd ’C:Y
=UsersY
=youY
=DocumentsY
=gnu-filesY
=functions’
あるいは,gnuplot 起動画面の上にある左から 4 番目のボタン ChDir をク
リックして,C:Y
=UsersY
=youY
=DocumentsY
=gnu-filesY
=functions をコピー
&ペースト(あるいは入力)してもよい.上のように入力したことと同じ結
果になる.
もとの gnu-files フォルダーに戻るには,
gnuplot> cd ’../’
あるいは,
gnuplot> cd ’C:Y
=UsersY
=youY
=DocumentsY
=gnu-files’
あるいは,ChDir をクリックして,C:Y
=UsersY
=youY
=DocumentsY
=gnu-files
gnuplot-calculus (2011-07-07 09:41)
10
第 1 章 Gnuplot の基本操作
をコピー&ペーストすればよい.
◎— 終了 (exit, quit, q)
gnuplot を終了するには,
gnuplot> exit
あるいは,
gnuplot> quit
あるいは,
gnuplot> q
と入力する.
1.4 Gnuplot の基本操作
本節では,gnuplot の最も基本的な命令(コマンド)を学ぶ.本格的なコ
マンド群は,次章以降徐々に知ることとなる.
◎— 関数を与えてグラフを描くコマンド (plot)
例えば,y = sin x のグラフを描きたい場合,
gnuplot> plot sin(x)
と入力すると,以下のような画面が立ち上がるだろう.
gnuplot-calculus (2011-07-07 09:41)
1.4 Gnuplot の基本操作
11
x の範囲(横軸)が [−10, 10] で,y の範囲(縦軸)が [−1, 1] となった.
これは自動的に見やすい形に設定される.自分で範囲を設定したい場合,例
えば,x の範囲を [−2π, 2π], y の範囲を [−2, 2] としたい場合,
gnuplot> plot [-2*pi:2*pi] [-2:2] sin(x)
とする.さらに,
gnuplot> plot [0:4*pi] sin(x)
とすると,x の範囲が [0, 4π] に設定され,y の範囲は自動設定となる.
また,複数の関数を同時に描画することも可能である.
gnuplot> plot [0:2*pi] [0:1.5] sin(x), x, x-x**3/3!, Y
=
> x-x**3/3!+x**5/5!
ここで,Y
=は改行の意味である.次のようになるだろう.
gnuplot-calculus (2011-07-07 09:41)
12
第 1 章 Gnuplot の基本操作
◎— 過去に入力したコマンドの再利用( Ctrl + P , Ctrl + N )
同 じ よ う な コ マ ン ド を 何 度 も 打 鍵 す る の は 面 倒 で あ る .そ こ で ,
Ctrl + P を押せば,1 回前に入力したコマンドが表示される(previous).
そのまま Ctrl キーを押しながら, P を押すと P を押した回数分だけ前に
入力したコマンドが表示される. Ctrl + N を押せば(next),1 回次に進
み,そのまま Ctrl キーを押しながら, N を押すと N を押した回数分だけ
次に入力したコマンドが表示される.
例えば,
gnuplot> plot sin(x)
と入力した後に,cos x を描画したいときは, Ctrl + P を押して, ← で
カーソルを動かして, Del や Back space キーを使って sin の部分のみを
消して,cos を打ち直せばよい.
◎— データファイルの読み込み (plot · · · using · · · with · · · )
例えば,次のようなデータファイル data.dat があったとしよう.
gnuplot-calculus (2011-07-07 09:41)
1.4 Gnuplot の基本操作
13
1
1
1
2
4
8
3
9
27
4
16
64
5
25
125
これに対して,
gnuplot> plot ’data.dat’ using 1:2 with lines
とする.意味は data.dat の 1 行目を x 座標(横軸),2 行目を y 座標(縦
軸)と考えて,それらを線で結ぶ,ということである.下図が表示されるで
あろう.
さらに,
gnuplot> plot ’data.dat’ using 1:2 with linespoint, x*x
2
とすれば,マーカー付き折れ線と放物線 x が両方描かれる.
gnuplot-calculus (2011-07-07 09:41)
14
第 1 章 Gnuplot の基本操作
もし using 3:1 と書いたら data.dat の 3 行目を x 座標,1 行目を y 座
標と考えることとなる.したがって,
gnuplot> plot ’data.dat’ using 3:1 w lp, x**(1.0/3.0)
と書いたら(w lp は with linespoint の略)
,下図のようなマーカー付き
折れ線と曲線 x1/3 が両方描かれる.
gnuplot-calculus (2011-07-07 09:41)
1.4 Gnuplot の基本操作
15
using x:y を省略したらデータファイルの 1 行目を x 座標データ,2 行
目を y 座標データとして読み込むことになっている.
◎— 世界地図データファイルの読み込み
gnuplotY
=demo の中にある world.dat を作業フォルダー gnu-files に
コピーして,その中に書いてある 2 次元座標のデータを
gnuplot> plot ’world.dat’
のようにプロットすると,次のようになる.
このデータを
gnuplot> plot ’world.dat’ w l
のように折れ線で結べば(w l は with lines の略)
,
gnuplot-calculus (2011-07-07 09:41)
16
第 1 章 Gnuplot の基本操作
となり,
gnuplot> plot ’world.dat’ w lp
とすれば,
のような各座標にマークした折れ線となる.また,中身を塗りつぶして,
gnuplot-calculus (2011-07-07 09:41)
1.4 Gnuplot の基本操作
17
とするには,
gnuplot> plot ’world.dat’ w filledcurve
というオプションを用いる(w は with の略).
◎— 単項・2 項演算子 (+, -, *, /, **, %, !)
単項・2 項演算子も素直に普通のものが使える.加減乗除は +, -, *, /
で,冪乗は**, 剰余 (mod) は % である.また,階乗は!である.例えば,
gnuplot> plot [0.02:0.2] cos(exp(x**x)/x)/x
x
)
cos exp(x
x
とすると,x の範囲が [0.02, 0.2] で,関数 y =
のグラフが描か
x
れる.
gnuplot-calculus (2011-07-07 09:41)
18
第 1 章 Gnuplot の基本操作
ギザギザしているのは,使っているサンプル点が少ないからである.実際,
gnuplot> plot [0.02:0.2] cos(exp(x**x)/x)/x w lp
としてみると,
となることからもわかる.指定しない限りサンプル点は 100 個となってい
る.だから,振動の激しいグラフはギザギザになる.サンプル点を 10000
gnuplot-calculus (2011-07-07 09:41)
1.4 Gnuplot の基本操作
19
個にしたかったら,
gnuplot> set samples 10000
とする.そうして,
gnuplot> plot [0.02:0.2] cos(exp(x**x)/x)/x w l
として再度描画すると( Ctrl + P + P として,2 回前のコマンド · · · w lp
を出して,lp を l に変えれば早い)
,滑らかな曲線
を得る.
◎— Gnuplot を電卓として使う (print)
上で述べた 2 項演算子を使って,電卓として使うこともできる.例えば,
123 ÷ 5 は,
gnuplot> print 123.0/5.0
と入力する.すると,次の行に
gnuplot-calculus (2011-07-07 09:41)
20
第 1 章 Gnuplot の基本操作
gnuplot> print 24.6
と表示される. ここでもし,
gnuplot> print 123/5
としたら,
gnuplot> print 24
と整数部分のみ表示されることに注意されたい.また,階乗!は実数型で返
される.例えば,
gnuplot> print 10!
とすると,
gnuplot> 3628800.0
となる.
◎— 画像ファイルに出力する (set term, set output)
次の 3 つの入力を順次行なう.
(1) 例えば,png ファイルに出力したいときは,
gnuplot> set terminal png
あるいは,
gnuplot> set term png
とする.他にも非常に多くのグラフィック装置をサポートしている.
gnuplot> set term
gnuplot-calculus (2011-07-07 09:41)
1.4 Gnuplot の基本操作
21
と入力すればリストが表示される.
(2) 次に,出力ファイル名を入力する.例えば,
gnuplot> set output ’world.png’
とする.
(3) 最後に,描画する.
gnuplot> plot ’world.dat’ w filledcurve
何も表示されないが,gnu-files の中に,world.png ファイルが生成され
ている.それをクリックしたら適当なビューアーで画像をみることができ
るが,使用中で開けないこともある(ファイルサイズが 0KB のときはそう
である)
.そのときは,
gnuplot> set output ’dummy’
な ど と し て ,ダ ミ ー の 画 像 フ ァ イ ル を 生 成 す れ ば よ い .そ う す る と ,
world.png のファイルサイズが 8KB のように表示され,閲覧可能にな
る.dummy を作る代わりに,gnuplot を終了してもよい.
Windows の描画モードに戻るには,
gnuplot> set term windows
とする.あるいは,gnuplot の初期設定となっている
gnuplot> set term wxt
とする.この方が描画が美しいし,複数の窓にグラフを描画することができ
る.(wxt は wxWidgets(ウィジェット)の略である.
)例えば,
gnuplot-calculus (2011-07-07 09:41)
22
第 1 章 Gnuplot の基本操作
gnuplot> set samples 10000
gnuplot> set term wxt 1
Terminal type set to ’wxt’
Options are ’1’
gnuplot> plot exp(sin(x))
gnuplot> set term wxt 2
Terminal type set to ’wxt’
Options are ’2’
gnuplot> plot [-5:5] [-5:] log(abs(cos(x)))
と入力すれば,1 番の窓(window id: 1)には,y = e
sin x
のグラフが描画さ
れ,2 番の窓(window id: 2)には,y = log | cos x| のグラフが描画される.
そして,1 番の窓を消したかったら,
gnuplot> set term wxt 1 close
と入力すればよい.
gnuplot-calculus (2011-07-07 09:41)
1.4 Gnuplot の基本操作
23
◎— ヘルプ機能
いままで登場したコマンドは gnuplot のコマンドのほんの一部である.
次章以降で,具体的な例を実行しながらさまざまなコマンドを学んでいく
が,gnuplot のコマンドを覚えることが目的ではないので,本書では主とし
てグラフの描画に必要なコマンドのみを紹介する.より格好よく描画した
い場合や,コマンドの使用法を深く知りたい場合は,gnuplot homepage の
demo を見たり,ヘルプ機能を使うとよい.
ところで,Windows 7 で.hlp ファイルを閲覧してヘルプ機能を使うには,
WinHlp32.exe というアプリケーションをインストールする必要がある.
インターネットで,Microsoft Download Center の
Windows 7 用 Windows Help プログラム (WinHlp32.exe)
のページにいって,手順に従いインストールする.上のページは,インター
ネットの検索機能を使って探す.
http://www.microsoft.com/downloads/ja-jp/...
ではじまる URL のはずである.
晴れて,ヘルプ機能が使えるようになったら,gnuplot の Help ボタンを
クリックするか,
gnuplot> help
あるいは,
gnuplot> ?
と入力する.
具体的に,with の種類を知りたいときは,
gnuplot> help with
gnuplot-calculus (2011-07-07 09:41)
24
第 1 章 Gnuplot の基本操作
とすればよいし,wxt とはどんな機能があるのかを知りたいときは,
gnuplot> help wxt
とする.