7
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【gnuplot超入門】基本コマンド

Last updated at Posted at 2019-01-12

#はじめに
計算物理の分野では求めた関数をグラフとしてプロットしり、集めたデータをファイルから出力しプロットしたかったりします。
ここでは、その際利用するツールの一つであるgnuplotに関して、初歩的なコマンドをまとめておきます。

#インストール
gnuplotをまずはインストールしましょう。
macOSでのインストールに関しては下記の記事がとても参考になります。
gnuplotをHomebrewからインストールするときの手順

#起動
Gnuplotはgnuplotコマンドで起動することができます。

$ gnuplot

	G N U P L O T
	Version 5.2 patchlevel 6    last modified 2019-01-01

	Copyright (C) 1986-1993, 1998, 2004, 2007-2018
	Thomas Williams, Colin Kelley and many others

	gnuplot home:     http://www.gnuplot.info
	faq, bugs, etc:   type "help FAQ"
	immediate help:   type "help"  (plot window: hit 'h')

Terminal type is now 'aqua'
gnuplot>

#基本コマンド
###関数をプロット(2次元)
関数をプロットするには、plotコマンドを利用します。省略形plでも構いません。
変数xを利用することができます。

gnuplot> plot sin(x)

一気に複数の関数をプロットすることもできます。

gnuplot> plot sin(x), x, cos(x)

###関数をプロット(3次元)
3次元グラフをプロットするには、plot関数ではなく、splot関数を利用します。
変数xに加えて、変数yを利用することができるようになります。

gnuplot> splot x**2 + y**2

###関数を再プロット
はじめにプロットした関数と、別の関数を同時に表示させるためには、replot関数を利用します。
省略形のreplでも構いません。

gnuplot> replot cos(x)

###グラフをクリアにする
clearコマンドを利用することによって、グラフが表示されるウィンドウ(AquaTermなどのツールにより開かれるウィンドウ)をクリアにすることができます。
つまり、再度グラフを構築することが可能になります。

gnuplot> clear

###オプションを設定する
オプションを設定するにはsetコマンドを利用します。

gnuplot> set [オプション]

###設定の読み込み
上記setコマンドなどで追加した設定(例:領域や見た目の変更など)を現在のグラフに適用するには、replotコマンドを使用します(replでも構いません)。

gnuplot> replot

先ほどのsetコマンドを利用して次に各種設定の方法を記載しておきます。

###表示領域の変更
plotコマンドでは、標準では、横軸は[-10, 10]、縦軸はグラフがうまく収まるように自動的に設定されます。
ただし、表示領域を変更したい場合もあると思います。そんな時は次のコマンドで変更することができます。

####x軸の範囲

gnuplot> set xrange[2:9]
gnuplot> replot

xrangexrと省略することができます。

####y軸の範囲

gnuplot> set yrange[-2:2]
gnuplot> replot

yrangeyrと省略することができます。

####z軸の範囲

gnuplot> set zrange[-5:5]
gnuplot> replot

zrangezrと省略することができます。

###x(,y(,z))軸の範囲を設定
plotする段階で範囲を設定する場合、x、y、z軸の範囲をまとめて設定することができます。

  • 2次元
    plot [ x 軸の左端値:x 軸の右端値] [ y 軸の下端値:y 軸の上端値] 式
  • 3次元
    splot [ x 軸の左端値:x 軸の右端値] [ y 軸の前端値:y 軸の奥端値] [ z 軸の下端値:z 軸の上端値] 式
gnuplot> plot [-9:9] [-2:2] sin(x)

指定する必要のない軸に関しては[]範囲を空にします
また、下端、上端を省略することも可能です。

gnuplot> splot [] [] [:0.5] sin(x)*cos(y)

###タイトルを設定

gnuplot> set title "title fuga"

###ラベルの設定

gnuplot> set xlabel 'x hoge'
gnuplot> set ylabel 'y hoge'
gnuplot> replot

###設定のリセット

gnuplot> reset
gnuplot> replot

#おわりに
関数を視覚的に理解しておくことは、様々な物理現象を読み解く際に大いに役に立ちます。ですので、関数をより身近なものにして諸現象への理解を深めていこうと思います。

7
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?