Posted on 2018/02/25, 4:06 PM By admin22
媒介変数によるグラフは複雑な模様を描く面白さがありますが、これをgnuplotを使ってアニメーションしてみました。
参考: http://www.natural-science.or.jp/article/20101203183935.php
上記のサイクロイドのアニメーションを参考に、エピサイクロイドを描いてみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
set size ratio 1.0 set samples 256 set xrange [-3:3] set yrange [-3:3] set trange [0:2*pi] set xtics -2, 2, 2 set ytics -2, 2, 2 set nokey set parametric set terminal gif animate optimize size 360, 360 set output "epicycloid.gif" load "epicycloid.plt" n = 0 |
epicycloid.plt
1 2 3 4 5 6 7 8 9 10 11 12 |
if (exist("n")==0 || n<0) n=0 theta = pi/20 * n fx(t) = t<=theta ? 2*cos(t)-cos(2*t) : 1/0 fy(t) = t<=theta ? 2*sin(t)-sin(2*t) : 1/0 plot fx(t),fy(t) w l,\ cos(t),sin(t) w l ,\ cos(t)+2*cos(theta),sin(t)+2*sin(theta) w l ,\ fx(theta), fy(theta) with points pt 7 lc rgb "red" if (n<80) n=n+1; reread |
http://www.geisya.or.jp/~mwm48961/electro/parameter3.htm
このサイトを参考に各パラメータを調整してバリエーションを作ってみました。
やはり絵が動くアニメーションは楽しいですね。簡単にGIFアニメを出力できるgnuplotはとても便利です。
Categories: 未分類 タグ: Gnuplot