はじめに
matplotlib FuncAnimationによる、subdivide_polygonのdegree=1, 2, 3における実行回数変化アニメーションについて解説する。
コード
解説
モジュールのインポート
図形データの生成
閉じた台形状の図形データとなる。
図の作成
plt.subplots(1,3)で1行3列の図を作成する。
a.set_aspect(‘equal’)とa.plot(shape1[:, 0], shape1[:, 1])ですべての図のアスペクト比を揃えて、元データの図形を表示する。
アニメーションの設定
空のリストの生成
アニメーション関数内で作成した図をいれるリスト。
アニメーションの関数
古いプロットを消す
図形の細分化と表示
new_shape1〜3に所定の回数のsubdivide_polygonを適用し、plotしたものを.append()でリストにいれる。
subdivide_polygonについては、以下で解説した。
[scikit-image] 20. 図形の近似と細分化(measure.approximate_polygon)
skimage.measure の approximate_polygonを用いた図形の近似
タイトルの表示
ax[0].set_title(“degree=1,point=”+str(len(new_shape1)-1))でタイトルにdegreeと細分化したデータのデータポイント数を表示する。
アニメーションの表示
HTML(ani.to_html5_video())とすればjupyter notebook上にアニメーションを表示できる。
コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)参考
[scikit-image] 20. 図形の近似と細分化(measure.approximate_polygon)
skimage.measure の approximate_polygonを用いた図形の近似
コメント