【gnuplot】 回転する4次元gifグラフのプログラム!
こんちは,けんゆーです.
皆さん,グラフ作成にgnuplot使ってますか?知らない人はググってね!
とにかく便利ですよね.
今日はおいらが3時間くらいハマってしまった回転する4次元グラフのコードを議事録として残しておきます.保存形式はGIFなのでPowerPointやKeynoteにはっつけても回転するので,ぜひプレゼンテーションツールでデータを見せる際に使ってくださいませ〜
4次元データとして扱うファイル:lyapunov.txt
lyapunovという名前は気にしなくて結構です笑
txtファイルは,図のようになっています.
左の列から,x軸,y軸,z軸,そこの軸に対応する値,となっています.
そこの軸に対応する値に関しては,カラーリングを施すことによって値を表現します.
4次元カラーグラフの書き方について
ターミナルから打つプログラムはこんな感じです.
gnuplot> spl "lyapunov.txt" u 1:2:3:4 w p pt 3 ps 3 lc palette
spl ( splotの略) → 3次元グラフを描写するコマンド.
u 1:2:3:4 (usingの略) → データ列の指定.
w p (with pointsの略) → プロットスタイルの指定.他にもlinesなど多数あり
pt 3 (pointtype) →ポイントのタイプ.13種類くらいあるよ.1~13.
ps 3 (pointsize) → ポイントサイズ.
lc palette (linecolor) →色の系統を変える.パレットへ!
グラフの回転のプログラムと実際のGIFについて
gnuplot> set pm3d depthorder
gnuplot> set parametric
gnuplot> set ur[0.01:5]
gnuplot> set vr[0:4*pi]
gnuplot> spl "lyapunov.txt" u 1:2:3:4 w p pt 3 ps 3 lc palette
gnuplot> set term gif animate optimize size 480,360
Terminal type is now 'gif'
Options are 'nocrop enhanced animate delay 10 loop 0 optimize size 480,360 font "arial,12.0" '
gnuplot> set output 'move.gif'
gnuplot> do for [j = 0:90 ] {
more> set view 60,4*j,1,1
more> replot
more> }
smooth palette in gif: using 160 of 160 available color positions
シキノートさんのページがすごい参考になりました.というかやり方パクりました.ありがとうございます.あのサイトはまじで神です.gnuplotで魔貫光殺砲打ってます笑
みんなもシキノートさんのサイトに行って驚いてみてね〜
いいなと思ったら応援しよう!
よろしければサポートお願いします!
研究資金に使用させていただきます。