gnuplotによるグラフ作成1~導入
1. gnuplot
今回からグラフ作成をするフリーウェアとして昔から使われているgnuplotについて紹介していく。基本的にはコマンドラインにより2次元、3次元のグラフを作成するソフトウェアで、初版は1986年に公開され、最新版は2019/12にリリースされている。読み方はニュープロットまたはグニュープロット。OSはLinux, Windows, macOS, 等に対応しており高機能のため科学技術分野で広く利用されている。また書籍なども多数出ているのでコマンドを覚えるという手間はあるものの、慣れるのに時間はかからないと思う。公式Webサイトはgnuplot homepage
2. gnuplotの特長
ここでは他のソフトウェアなどと比較することでgnuplotの特長を見ていく。
Excel
Excelに限らず表計算ソフトを使ってグラフ作成を行うのが一般的だが、表計算ソフトの場合、例えばy=sin(x)のグラフを作成するためにはxの列を作って数値を生成し、y列にExcel関数のsin(x)を使って数値を生成した上でx,y列を選択してグラフを作成する。 gnuplotのようなコマンドラインツールではPlot sin(x)
とするだけで適当な範囲(指定する場合はさらにコマンドが必要)でサインカーブを表示してくれる。つまりグラフ生成の手順が非常に簡潔なところが特徴になる。
Wolfram alpha
Wolfram alphaとはMathematicaの開発元であるWolfram Research社が運営している数式・数学を中心とした科学技術に特化した質問応答システム。Wolfram|Alpha 日本語版:計算知能 特にコマンドを指定しなくても、検索エンジンの要領で"プロット sin(x)"などと入力するとグラフを生成する。グラフ以外にも微分積分、連立方程式の解など、それらしい言葉と数式を入力すれば特にコマンドを入力しなくても解いてくれる。またmathematicaのコマンドを受け付けるのでPlot[Sin[x],{x,-2Pi,2Pi}]
と入力するとx=-2πから2πまでサインカーブをプロットする。Webサイト上で実行できるため、フリーで使用できる(機能制限あり)上にインストール不要。ぱっと使いたい場合はかなりお勧めだが、計算した結果の画像ファイルをダウンロードしたり、テキストデータをアップロードしてプロットや計算に用いるなどは機能制限の対象になっている。gnuplotはインストールは必要だが、画像ファイルの保存やテキストデータのプロット、あるいはプロットのための一連のコマンドをスクリプトとして保存しておけば、スクリプトを呼び出すことで自動でプロットすることができるなどできる。
市販のグラフ作成ソフト
グラフ作成に特化した市販のグラフ作成ソフト、たとえばOrigin:データ分析・グラフ作成 Origin | ライトストーンやカレイダグラフ:高精度なグラフ作成とデータ解析のためのソフトウェア [KaleidaGraph] | ヒューリンクスは昔からよく使われている。機能的にはもちろん優れており、gnuplotよりもグラフィックが綺麗なので、特にプレゼンテーションに使用する場合は効果的だと思う。必要な機能をフリーで利用できるフリーウェアを選ぶか、機能とグラフィック(+使い勝手)が充実している市販ソフトを選ぶかは判断が分かれる。
数値計算ソフト
python, octave, scilabのようなフリーの数値計算ソフトに付属するプロット機能を利用する方法もある。表計算ソフトと同様に数値計算ソフトの場合も一度データを生成してからplotコマンドを用いてグラフを作成する必要がある。(慣れるとExcelよろは楽)フリーウェアであるが、本来は数値計算に重点を置くのでソフトウェア自体が比較的動作が重いが、gnuplotはグラフ作成に特化しているので、比較的動作が軽い。(使用しているPCが高性能であればあまり気にならないかもしれない)逆に数値計算を行う場合は、数値計算ソフトのプロット機能を利用するのが自然だ。
3. Gnuplotの導入
Windowsの場合、公式サイトgnuplot homepageでDownloadからバージョンを選択するか、2020/6/30現在でVersion 5.2 (current)-Release 5.2.8 (Dec 2019)から実行ファイルやソースファイルなどをダウンロードしてインストールする。Release 5.2.8の場合gnuplot 5.2 patchlevel 8を実行するとターミナルが立ち上がる。コマンドは次回以降紹介するが、load "all.dem"
とするとプロットのサンプルが表示される。(下図参照)
4. まとめ
今回はgnuplotと他のソフトウェアと比較した場合の特長、インストールまでの手順を紹介した。次回からグラフ作成のためのコマンド等を紹介していこうと思う。