嘿, 我有一套频率和功率谱的值,我必须绘制功率谱与对数尺度上的频率。一旦完成,我需要通过最适合的直线穿过它。我在线性刻度上得到线条,但是当我尝试将它叠加到频率功率谱图上时,结果图不显示任何线,相反,第一幅图的数据点只是在空间上移动。 另外,如果使用loglog函数绘制在日志比例上,则相同的线条不会显示出来。蟒蛇曲线拟合
有人可以告诉我,我应该怎么做才能获得日志规模上的线?
所以我有一个文件有三列;频率,功率规格。电源信号。这里是一段我写绘制数据线..
#initialize all variables to 0
#open the data file
while 1:
ln = datafile.readline()
if ln:
data = ln.split()
x = float(n)
y = float(data[0])
z = float(data[1])
xval.append(float(n))
yval.append(y)
zval.append(z)
n += 1
sum_z += z
sum_y += y
sum_y_squared += y*y
sum_yz += y*z
else:
break
datafile.close()
# calculate slope and intercept using formulae
for num in xval:
res = intercept + slope*num
line.append(res)
#Plot data
pylab.figure(0)
matplotlib.pylab.loglog(yval,zval)
#Plot line
pylab.figure(0)
pylab.plotloglog(line)
你需要在你的问题中包含一些代码,展示你正在尝试的东西。 – detly 2011-03-03 08:08:08