はじめに
4隅の四角形によって一部が隠れている四角形の回転アニメーションを作成する。
コード
解説
モジュールのインポート
データの生成
各種パラメータの生成
anglesは回転する角度で、sizeは4隅の四角の幅と高さを変化させるためのパラメータとなっている。
図の表示
patches.Rectangle
により、4隅の長方形を作成する。xy
では長方形の左下の座標を指定し, width
で幅、height
で高さを設定する。color
で色を設定する。zorder
で表示順を設定する。大きいほど前面に表示される。add_patch()
により図中に挿入する。
angleを変化させることで長方形が表示される角度が変わるので、長方形の大きさが変化する方向を変えることができる。
回転する正方形はax.fill
で作成する。
アニメーションの設定
回転行列を用いて、x,yの座標を回転させて、回転したデータをset_xy
で表示されているプロットにセットする。
アニメーションのフレーム数が100を超えてから、set_width
, set_height
を用いて4隅の四角の大きさを変化させる。
アニメーションの表示
animation.FuncAnimationにより、フレーム数200、間隔25msとした5秒のアニメーションを作成し、HTML(ani.to_html5_video())でjupyter lab または notebook上に表示する。
コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)参考
ちょっと脳を混乱させたい人の為の6つの面白錯視アニメーション|カラパイア
なんとも不思議な錯視の中にはもはやわが目も信じられなくなり混乱をきたしたユーザーが救いを求める現象を招くものもある。そんな事態に役立ちそうな動画が反響を呼んでいる。…
matplotlib.patches.Rectangle — Matplotlib 3.1.2 documentation
コメント