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)
每次我运行程序,我都会得到这个错误。
“绘图(时间,日志(zlist))
TypeError:只有length-1数组可以转换为Python标量“
有什么办法可以让zlist不是一个数组,这样我就可以记录日志,或者我的程序出了什么问题?
其他的都很好,只有一个问题。
(注意,我已经导入了pylab、numpy和math)
编辑:q值相对来说不重要,但理想情况下最终会在500-1000之间。m和n必须介于0和1之间,b必须介于0和4之间。
编辑X2:它现在似乎可以工作了,我不知道为什么,但它可以是a)从数学导入日志,或者b,负值问题,但不管怎样,它工作得很好。感谢大家的贡献!