from numpy import *
from pylab import plot,show
q=10
time = range(q)
mlist=empty(q)
nlist=empty(q)
m=.9
n=(m+(1e-6))
b=3
for t in range(q):
mlist[t]=m
nlist[t]=n
m=(b*(1-m)*m)
n=(b*(1-n)*n)
zlist = mlist-nlist
zlist = abs(zlist)
plot(time, log(zlist))
show()
次に、時間のグラフをプロットしたい,log(zlist)
プログラムを実行するたびに、このエラーが発生します。「plot(time,log(zlist)) TypeError: 長さ 1 の配列のみを Python スカラーに変換できます」
ログを取得できるようにzlistを配列ではなくする方法、またはプログラムで何がうまくいかないかのアイデアはありますか? 他のすべてはうまく機能しますが、その 1 つの問題だけです。(念のため、pylab、numpy、および math をインポートしました)
編集: q 値は比較的重要ではありませんが、理想的には最終的に 500 ~ 1000 の範囲になります。m と n は 0 から 1 の間でなければならず、b は 0 から 4 の間でなければなりません。
編集 X2: 現在は機能しているようですが、理由はわかりませんが、a) 数学からのログのインポート、または b、負の値の問題のいずれかである可能性がありますが、関係なく、うまく機能しています。貢献してくれたすべての人に感謝します!