GnuplotからアニメーションGIF

なんか無駄に苦労した気がしないでもないが、これでメールでアニメーションが送れるんだから、悪くもないだろう。
備忘録がてらです。

Gnuplotでpngファイル or gifファイルを作る。

gnuplotの端末で

gnuplot> set terminal

とうち、gif or pngがサポートされてればOK。僕は、この時点からアウト。


gnuplotのconfig.logを見ると、確かにgif, pngがサポートされていなかった。理由は、libgd.dylibがないため。


しょうがないので、GD2をインストール。しかし、コレがなかなかうまく行かず、芋づる式に色んなライブラリを

% sudo port install hogehoge +universal

i386x86_64でインストール。


しかし、依然として、gd2はインストールできず。
しょうがないので、ソースからの野良ビルド -> おk


再度、Gnuplotをインストール -> おk


と言うことで、Gnuplotのスクリプトを作って、元ファイルを吐き出させる。

set term png size 640,480
set output "./images/out000.png
splot "graph_plane.data" index 0 using 1:2:3 title "waveform", \
"wire_frame.data" w l ls 1

set output "./images/out001.png
splot "graph_plane.data" index 1 using 1:2:3 title "waveform", \
"wire_frame.data" w l ls 1
:


そして、Gnuplotシェル内で、

gnuplot> load "create_anime.plt"

を実行。バラバラのファイルが作成。

アニメーションGifを作る

使うツールは、ImageMagick。何とも懐かしい。
MacPortsでインストールしようとすると、これまたダメだったので、野良インストール*1


野良インストールしても、色んなライブラリが"not required..."と出るので、これまた、色んなライブラリをMacPortsでインストールするか、野良インストールする必要があります。


MacPortsユニバーサルバイナリを作る方法は、

% ports install hogehoge +universal


野良インストールでユニバーサルバイナリを作る方法は、

% CFLAGS="-arch i386 -arch x86_64" CXXFLAGS="-arch i386 -arch x86_64" LDFLAGS="-arch i386 -arch x86_64" ./configure --disable-dependency-tracking --prefix=/opt/local

でおk


晴れて、ImageMagickがインストールされると、convertコマンドとかが使えるので、

% convert -delay 50 ./images/*.png anim.gif

でアニGIFを作る。

表示する。

てっきり、Finderからダイレクトで見れると思いきや、プレビュー.appで見れないじゃない。。。
しょうがないので、泣く泣くSafariで表示。。。あほくさ。。。


なんかしょうもないことに時間を使ってしまった。gnuplot立ち上げないでも、アニメが見れるようになるので、いいと思ったのに、ブラウザとは。。。
てっきり、クイックルックで見れると思ったんだけどなぁ。


(追記: 091118)
id:tkuroに教えてもらった
Animated GIF QuickLook plugin
を使うことで、クイックルックできました。皆様に感謝感謝。

*1:バイナリが提供されているので、おとなしくそれを使うべし