研究者の雑談

思いついたけど140文字に収まらない話を書くためだけのブログ

gnuplot から matplotlib (Python) に乗り換えた話@物理研究

学部4年の卒業研究から、というか学生実験の頃からかれこれ10年近くデータのプロットには gnuplot を使ってきたんだけど最近は python のライブラリ matplotlib を使うことが多くなった。

状況ときっかけ

  • 物理の研究をしてるので、計算自体はほとんど fortran
  • python はちょっとした計算とか処理をするのに使う程度
  • 計算ぶん回したり出力ファイルを整理したりは基本的にシェルスクリプトでやってる
  • 大量に回した系統的計算の結果をプロットして確認したりファイル(svg とか pdf とか)に出力したい

matplotlib (python) と gnuplot の比較

  • まずシェルスクリプトとの相性が python のほうがいい。たぶん gnuplot も同じように使えるんだろうけど、いまのところよくわからない
  • 大量のデータをループを回して図を pdf で吐き出す、それをシェルコマンドでマージする、というところまでシェルスクリプトで自動化しようとすると python が便利
  • 当然 python ならその場でちょっとしたデータ処理等々するときも gnuplot よりも有利
  • いろいろ触っていみると matplotlib のほうがかゆいところに手が届く。思い通りの図が書ける。なんか図のデザインもカッコイイ。

というわけで、その場でパッとデータを可視化したいときは gnuplot, それ以外の場合は python で matplotlib を使うのがベストというのが現状の判断。 またどこかで実際どんな感じにやってるのか書きたい。