gnuplot:01.最初に

最初に抑えること

gnuplotは昔からあるプロッター(グラフを描くソフトウェア)になります。多くのオプションが用意されているだけでなく、シェルから対話的に図を描くことができます。このページでは基本的にcsvファイルをgnuplotで表示することを想定して話を進めていきます。processingやpython等で適時生成したcsvファイルをgnuplot処理する流れです。どうせpython使うならpyplot使ったら、という声が聞こえて来そうですが、個人的にgnuplotのほうがわかりやすくて好きなのと、大きなデータサイズのcsvを扱う場合、pythonでは配列長等の制限を明示する他、別拡張(pandas)を使う、segmentation faultになることや、動作しなくなるなどの面倒なことがあったためです。

インストール

gnuplotを最初にインストールしておきます。

$ brew install gnuplot

最もシンプルな例

まずは下記csvをダウンロードして、そのデータを表示してみます。最初の列がx軸の値、2番目の列がy軸の値となります。

sample.csv
1,0
2,100
3,10
$ gnuplot
$ gnuplot>set datafile separator ","
$ gnuplot>plot "sample.csv" with lines
$ gnuplot>q

gnuplotを起動すると、gnuplotのシェルになります。そこでまず最初に csv がカンマ区切りであることを設定しておきます。gnuplotではデフォルトがスペース区切りです。次にそのcsvファイルをグラフ表示しています。with lines というオプションは頂点座標を線で結ぶとこを意味します。この場合は(1,10),(2,100),(3,10)を線分で結びます。最後の[q]はgnuplotのシェルを終了するコマンドです。うまくいくと下記のような画像が表示されます。

gnuplotについて不明な箇所を調べる際、googleにキーワード検索はもちろんですが、gnuplotは良い意味で枯れたソフトウェアなので、マニュアルが充実しています。Qitaなんかもケースごとに出てくるので、ドンピシャのケースがあればよいのですが、細かな修正や、「ここをこうしたいのだけれども」となった場合は公式マニュアルを見たほうが手っ取り早いですし、間違いがありません。公式マニュアルはPDFでパンチ効いてるので、下記URLのhtmlドキュメントを参照しましょう。気になるワードや不明な語彙があったらテキスト検索(Ctrl+F)をかけて探してみてください。

このページでもケースに依存したいくつかの教材を載せておきます。

  • gnuplot/01.最初に.txt
  • 最終更新: 2019/06/23 17:04
  • by baba