Gnuplot入門 - 地球および惑星大気科学研究室
Download
Report
Transcript Gnuplot入門 - 地球および惑星大気科学研究室
gnuplot入門
神戸大学大学院 宇宙物理学研究室
青田 拓大 M2
田方 友梨 M2
目次
1. gnuplot とは
2. gnuplotの入手方法
3. gnuplot の操作方法
起動と終了
表示方法
カスタマイズ
スクリプトファイル
save,load,callコマンド
出力
Gnuplot について
Gnuplot とは?
•Thomas Williams , Colin Kelley らによって作られたグラフ作成ツール。
特徴
•非常に簡単なコマンドで数式やデータの多種多様なグラフが作成できる。
•Linux,MS-Windows,Apple MachintoshなどのOSで使用可能。
•無料で手に入る
•様々な人々がソースコードを改良して「改良した部分だけ」を配布をしてい
る(パッチ形式)
例) gnuplot+ 千葉大学の山賀正人氏が改良したgnuplot
Gnuplot の入手方法
Linuxなら
•端末上で
sudo apt-get install gnuplot
とコマンドを入力
Windowsなら
•下記のサイトから圧縮ファイルをダウンロードして適当なフォルダで解凍すればいい
http://sourceforge.net/projects/gnuplot/files/
詳しい説明は下記のホームページでチェックできる
http://www.ss.scphys.kyoto-u.ac.jp/person/yonezawa/contents/program/gnuplot/index.html
(京都大学 固体量子物性研究室 米澤進吾氏のホームページ)
Gnuplot の起動、終了
gnuplot の起動の仕方
Linux の場合
Terminal 上で「gnuplot」とコマンドを 入力
Windows の場合
ダウンロードしたフォルダの中の「gnuplot 」というexeファイルをクリック
]------------------------------------------------
------------------------------------------------ gnuplot の終了の仕方
バージョン(今回は4.2)
最後にupgradeされた日(2009)
出力形式(wxt)
デフォルトでは画面上に出力
グラフの表示
例 y=sin(x) と z=x2+y2 グラフにしてみる
Gnuplot で使用出来る関数と演算子(一部)
説明
説明
説明
関数
説明
**
a**b
べき乗(ab)
Abs(x)
xの絶対値
+
A+b
和
ceil(x)
xより小さくない最少の整数
-
A-b
差
cos(x)
xのコサイン
*
A*b
積
exp(x)
eのx乗
/
a/b
商
floor(x)
Xより大きくない最大の整数
<
A<b
より小さい
log(x)
底がeの対数
<=
A<=b
以下
log10
底が10の対数
==
A==b
等しい
%
A%b
余り
?:
A?:b:c
条件演算子
!
A!
階乗
$
$1
因数の指定
条件分けグラフで
具体例を示す
グラフのカスタマイズのところで
具体例を示す
媒介変数を使った関数のグラフ
媒介変数
x,y 2次元の時は t
x,y,z3次元の時は u , v
• 例1) 半径が1の円を描きたい時
x cos( )
y sin( )
• 例2) 半径1の球を描きたい時
x sin( ) cos()
y sin( ) sin( )
z cos( )
等高線表示
gnuplot では3次元グラフに、等高線を引くことができる
例) z=x**2 + y**2のzについてx y 面へ等高線表示を行う
3次元グラフでの曲面の色表示
gnuplot 4.0以降では3次元グラフに
色付けすることが出来る
コマンドは
set pm3d (option)
例) z=x**2 + y**2 のグラフを色づけする
a. グラフの曲面に色付け
b. グラフの底面に色付け
option
説明
at b
グラフの底面に色付け
At s
グラフの曲面に色付け
At t
グラフの天井面に色付け
関数の定義
gnuplot ではデフォルトで設定されている関数とは別に自分で関数を定義できる。
例えば
h( x)
1
exp(( x )2 ) 1
というグラフを、パラメータα,βを変えて表現したい時
条件分けグラフ
x2
f ( x)
16
x 2 20x 84
x4
4 x 10
10 x
というグラフを描きたいとき・・・
次のようなコマンドを入力する
A ? B:C の意味
条件Aの場合はB
それ以外はC
複数の画面でのグラフの表示
gnuplot では1つのウィンドウ上に複数のグラフを表すことが出来る
set size グラフのサイズを指定
set origin グラフの左下の座標を決定
複数の画面でのグラフの表示
gnuplot では1つのウィンドウ上に複数のグラフを表すことが出来る
複数の画面でのグラフの表示
gnuplot では1つのウィンドウ上に複数のグラフを表すことが出来る
複数の画面でのグラフの表示
gnuplot では1つのウィンドウ上に複数のグラフを表すことが出来る
データのプロット
データファイルの数値を読み込んでグラフにすることが出来る。
たとえば、左の表を右のグラフ表示にした場合・・・
右のグラフだけを見たら、何を表したグラフなのか分からない!
グラフのカスタマイズ
gnuplot では、グラフの範囲、目盛の変更、タイトルの表示 など
グラフの環境をカスタマイズできる。
例) 前ページのグラフをカスタマイズする
次のようなコマンドを入力
set title ‘ 某研究室のお茶代の支出 ’ -------- タイトル指定
set xlabel ‘月’
-------- x 軸のラベル指定
set ylabel ‘支出(円)’
-------- y 軸のラベル指定
plot [3.5:12.5] [0:2250] ‘test.dat’
カスタマイズ前
カスタマイズ後
データのプロット(2)
データファイルの中には各月のトータルの支出が書かれていない。
演算子 $ を利用すればグラフ上に表示できる
前ページのカスタマイズ後のグラフを出力した状態で以下のコマンドを入力
replot ‘ test.dat ’ u 1 : ( $2 + $3 + $4 ) w lp title ‘ 総支出 ’
$2+$3+$4
2, 3, 4列目の合計値
スクリプトファイル
スクリプトファイルとは‥
ターミナル上で入力するコマンドを書いたテキストファイル
スクリプトファイルを読み込むことで、すぐにグラフを書き出すことが出来る
スクリプトファイルに関係するコマンド
save
入力したコマンドをスクリプトファイルに保存する
load , call
スクリプトファイルを実行する
saveコマンド
コマンドライン入力で入力したグラフと設定がスクリプトファイルとして保存される
コマンドは
save ( option ) ‘ file name ’
Option の一覧
var
定義された変数の保存
function
定義された関数の保存
set
Set コマンドで設定されたオプションの保存
Option に何も設定しない場合
すべての設定と最後に実行した plot ( splot ) コマンドが保存
load コマンド
スクリプトファイルを読み込むときに使用するコマンドの1つ
複数のコマンドを入力しなければいけない時に便利!
コマンドは
load ‘ script-file ’
たとえば・・・
先ほどのカスタマイズしたグラフをスクリプトファイルとして保存する
save ‘ test.gp ’
このファイルに保存したグラフを出力する
load ‘ test.gp ’
call コマンド
スクリプトファイルを読み込むコマンド
load コマンドとの違い‥引数を指定出来る($0~$9まで引数を設定可能)
call ‘ file name ’ ‘$0’ ‘$1’ ‥‥ ‘$9’
たとえば、次のようなスクリプトファイルがあるとする
$0 ---$1 ---$2 ---$3 ----
下記のコマンドでグラフが出力される
call ‘call.gp’ ‘2’ ‘3’ ‘1’ ‘example’
xの出力範囲
sin(x)の最大値
sin(x)の周期
グラフのタイトル
グラフのファイルへの出力
gnuplot では様々なフォーマットの形式で出力が可能
gnuplot でサポートされている出力形式の一例
Aifm , corel, excl, gpic, imagen, imagen , iris4d
LaTeX, mf postscript, kyo, windows, X11
使用しているgnuplot で使用出来る出力形式を知るためのコマンド
set terminal
本日は postscript 形式 について説明をしていく
Postscript グラフへの出力
postscript への出力へ変更するには
set terminal postscript (option)
(option) はラインの太さ、カラー表示、フォントなどを設定
Option の一覧
Option
コマンド入力例
コマンドに意味
Mode
Landscapae
Portrait
グラフを横向きに出力
グラフを縦向きに出力
Color
Color
Monochrome
カラーで出力
モノクロで出力
Line_style
Dashed
Solid
グラフのラインに波線を使用
グラフのラインに実線を利用
Dash_length
Dashlength 1.0
波線の間隔を指定
Line_width
Linewidth 1.0
線幅の幅を指定
Font _name
Times-Roman
Psのフォントを指定
Font_size
12
フォントのポイント数を指定
出力例
例) 「test.dat」から出力したグラフをpostscript 形式で出力してみる
コマンドは以下の通り
(カスタマイズされたグラフが出力された状態で)
Postscript で出力したグラフ
まとめ
• gnuplot なら...
i. 様々な種類のグラフを描ける
ii. グラフのカスタマイズができる
iii.スクリプトファイルの読み込みができる
iv.様々なファイルの形式で出力できる
参考資料
・使いこなすgnuplot(改訂第2版)
矢吹道郎 大竹敢 2004
・神戸大学地球惑星科学科 2006年度 情報数理演習 第4回 資料
Webページ
・京都大学 固体量子物性研究室 米澤進吾氏のホームページ
http://www.ss.scphys.kyoto-u.ac.jp/person/yonezawa/contents/program/gnuplot/index.html
(gnuplot のダウンロードの仕方、初期設定から簡単な操作の説明などが書かれている)
・新潟工科大学工学部 竹野茂治氏のホームページ
http://takeno.iee.niit.ac.jp/~foo/gp-jman/gp-jman.html#manjp-release
(Gnuplot 4.0 のマニュアルの日本語訳がおいてある)