キロスのゲーム日記

ゲーム、TCGなど趣味の話

gnuplotの便利なコマンド

関数やデータファイルからグラフを描くのに便利(?)なソフトにgnuplotというものがあります。

便利ではあるのですが、コマンドをすぐに忘れてしまうので、よく使う便利なものをまとめておきたいと思います。


まず、使い方の前に簡単な導入方法の説明をしたいと思います。

Ubuntuなどのlinux系列では、gnuplotがリポジトリに登録されていると思うので、パッケージマネージャーを使えば簡単にインストールできます。
Windowsでは、sourceforgeに置いてあるgp501-win64-mingw.exeやgp467-win64-setup.exeなどのインストーラーを使えばインストールできます。

バージョンによってインストーラーの名前が異なるようなので注意してください。
私は、Ver.5.0.1.をインストールしました。



以下で、よく使うコマンドをまとめていきます。

なお、gnuplotではほとんどのコマンドに省略形が存在するので、楽をしたいときは省略形を探してみてください。
下でも省略形を使っているところがあります。


・全ての設定を初期化
reset


・タイトルを設定
set title "NAME"


・X軸のラベルを設定
set xlabel "NAME"


・Y軸のラベルを設定
set ylabel "NAME"


・凡例の場所を設定
set key bottom

設定できる場所は
left : 左
right : 右
top : 上
bottom : 下
ouside : 枠の外、右側
below : 枠の外、下


・凡例を表示しない
unset key


・関数のプロット
plot sin(x)
replot cos(x)
replot

plotで関数を描画。
replotで直前のグラフに重ねて描画。
replot単体で使うと、以前の直前のグラフを再描画。
さまざまな数学関数が利用可能。
パラメータはデフォルトではx。


・データのプロット
plot "data_file.dat"
"data_file.dat"内の1行目と2行目のデータを用いてグラフを描画。


・使用するデータの列を指定
plot "data_file.dat" using 2:3


usingを用いて、簡単な演算結果の出力も可能
例:1列目と2列目のデータの積をX軸方向のデータとしてプロット
plot "data_file.dat" using ($1*$2):3

例:1列目のデータが10の場合のみプロット
plot "data_file.dat" using ($1==10?$1:1/0):2
ここで、A?B:Cとは、Aが真のときBを出力し、Aが偽のときCを出力することを表す。
また1/0は非数となるため、出力されない。


・空行で区切られたデータの指定
plot "data_file.dat" i 2


・描画の種類を指定
plot "data_file.dat" with l

選択可能な描画の種類は
l : 線(linesの略)
p : マーク(pointsの略)
lp : マークを線でつなぐ(linespointsの略)
d : 点(dotsの略)
など


・マークの大きさを指定
plot "data_file.dat" with p ps 3


・線の太さを指定
plot sin(x) lw 3
詳細はtestコマンドで確認可能。


・線の色を指定
plot sin(x) lc 3
詳細はtestコマンドで確認可能。


・線の種類を指定
plot sin(x) dt 3 
詳細はtestコマンドで確認可能。


・凡例名を指定
plot sin(x) title "NAME"


・グラフをファイルとして保存
set t png 16
set o "FILE..png"
plot sin(x)
set o
set t w

詳細の説明
・1行目 set t png 16
出力先のフォーマットを指定
数値はファイル出力時の文字のサイズ。

指定可能な形式は
png : ビットマップ形式であるPNG。おすすめ。
eps : ベクター形式であるEPS。Inkscapeなどで編集しやすく、TeXとの相性も良い。ただし、以下のようにオプションを入れないと思った通りに動いてくれない。
set t postscript eps enhanced color
wxt : ウィンドウへの出力
など

・2行目 set o "FILE.png"
出力ファイルを指定

・3行目 plot sin(x)
グラフの出力。
個人的には、事前に出力を確認して、ここはではreplotするのがおすすめ。

・4行目 set o
出力ファイルを切り離す。
これをしないとeps出力時などに出力が狂うことがあるので、書いておいたほうがよい。

・5行目 set wxt
ファイル出力が終わったら、ウィンドウへの表示に戻す。
戻さないと画面に出力が出てこない。


・出力テスト画面の表示
test
test描画をファイル出力すると、出力形式ごとの配色の違いなどが確認できる。


・X軸を対数表示
set log x


・X軸の範囲を指定
set xr [0:100]


・X軸の目盛りの間隔を指定
set xtics 5


・タイトルやラベルで特殊な文字を使用可能にする。
set termoption enhanced
例えば、
"x^2"でxの2乗を出力。
"{/Symbol A}"でAに対応するギリシャ文字を出力。


今後も適宜、追加していく予定です。
関連記事
関連するタグ PCgnuplot
[ 2015/07/22 04:30 ] PC gnuplot | TB(0) | CM(0)
コメントの投稿












管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL

プロフィール

キロス

Author:キロス
ゲームやTCG、その他日常生活で気になった事の話をします。
主にFFの話をするつもりですが、色々なネタを書くと思います。

検索フォーム
全記事表示リンク