はじめに
matplotlib FuncAnimationにより、ポアソン分布のパラメータλを変化させたときの分布の変化をアニメーションで表示する。
コード
コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)解説
モジュールのインポート
ポアソン分布を計算するため、scipy.stats
からpoissonをimport。
軸範囲と軸ラベル、目盛りの間隔の設定
ax.xaxis.set_major_locator(ticker.MultipleLocator(2))
でx軸の表示間隔を2にしている。
データの生成
xがlinspaceで0〜20までの整数で、
λは1から15まで100stepで変化させる。
アニメーションの設定
まずグラフを入れるために空のリストlinesをupdate関数外に作成する。
アニメーションでは古いプロットを消す必要があるので、
linesにグラフが入っている場合は、lines.pop().remove()で消す。
line,でプロットを作成して、linesに入れていく。
marker=”o” でマーカーの形状を
markersize=10 でマーカーの大きさを
markeredgewidth=1.5 でマーカーの線の太さを
markeredgecolor=”k” でマーカーの線の色を
markerfacecolor=”m” でマーカーの塗りつぶしの色を
color=’navy’でマーカーを結ぶ線の色を
設定できる。
ax.set_titleでタイトルにλの値を表示。
アニメーションの表示
FuncAnimationでanimationの表示。updateを100step実行してアニメーションとする。intervalは100 ms なので10秒のアニメーションとなる。
HTML(ani.to_html5_video)でjupyter notebook上にアニメーションを表示できる。
コメント