前提・実現したいこと
ここに質問の内容を詳しく書いてください。
pythonで以下のサイトにあるhttp://dsng.hatenablog.com/entry/2013/02/06/150713
ロトカヴォルテラ方程式をアニメーションにしようとしてまして、https://omedstu.jimdo.com/2018/06/21/fitzhugh-nagumoモデルをアニメーションで見る/
上記のサイトに書いてあるコードを改造してみたところ、
figureの枠しか現れず、アニメーションも表示されず困っています
プログラミングも科学技術計算も初心者なのでどこから直せばいいか見当もつかずです
よろしくお願いします。
発生している問題・エラーメッセージ
アニメーションが表示されないです figureの枠だけ出てきます コピペ中心に書いているためどこがまずいのかわからないです
該当のソースコード
python
1%matplotlib notebook 2 3import numpy as np 4import matplotlib.pyplot as plt 5import matplotlib.animation as animation 6import scipy.integrate as integrate 7from matplotlib.animation import FuncAnimation 8 9 10 11a = 2. # 被食者の出生率 12b = .1 # 被食者の被食率 13c = 1.5 # 捕食者の死亡率 14d = 0.75 # 捕食者の増加率 15 16def lotka_volterra(state, t): 17 18 prey, pred = state 19 dot_prey = prey * (a - b * pred) 20 dot_pred = pred * ( -c + d*b * prey) 21 return dot_prey, dot_pred 22 23prey0 = 10 24prey0 = 5 25 26fig = plt.figure() 27t = np.arange(0.0, 10, 0.01) 28len_t = len(t) 29dt = 5 30 31def update(i): 32 global y, y0 33 34 if i ==0: 35 y0 = [prey0, pred0] 36 37 plt.cla() 38 39 y = integrate.odeint(lotka_volterra , y0, t) 40 41 y0 = (y[dt,0], y[dt,1]) 42 43 prey = y[:,0] 44 pred = y[:,1] 45 46 plt.plot(t, prey, label="prey : 被食者", color="#ff7f0e") 47 plt.plot(t, pred, label="pred : 捕食者", color="#1f77b4") 48 plt.plot(t[len_t-1], prey[len_t-1],'o--', color="#ff7f0e") 49 plt.plot(t[len_t-1], pred[len_t-1],'o--', color="#1f77b4") 50 plt.grid() 51 plt.legend(bbox_to_anchor=(0, 1), 52 loc='upper left', 53 borderaxespad=0) 54 55ani = animation.FuncAnimation(fig, update, interval=100, 56 frames=300) 57plt.show() 58
試したこと
上記のサイトと共通する点と異なる点を一つ一つ確認して、消したり書いたりです
補足情報(FW/ツールのバージョンなど)
http://dsng.hatenablog.com/entry/2013/02/06/150713
https://omedstu.jimdo.com/2018/06/21/fitzhugh-nagumoモデルをアニメーションで見る/
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。