如何从Python中获取数据的主导频率?

时间:2016-07-31 12:43:03

标签: python fft frequency frequency-analysis

我试图绘制双星系统的功率 - 频率图。我的数据包括时间(以天为单位)和流量(标准化)。使用SciPy fftpack。然后,我得到sci_fluxsci_freq。在绘制图表时,功率由20*scipy.log10(sci_flux)计算。此外,我想获得一个主导频率来计算系统的周期,但我不能。我怎样才能获得主导频率?

time, flux = loadtxt('KIC011616594.txt', usecols=(0, 1), skiprows=0, unpack=True)

#-----SciPy-----#
sci_flux = abs(scipy.fft(flux))
sci_freq = scipy.fftpack.fftfreq(flux.size, time[1]-time[0])

#-----Graph-----#
pylab.subplot(211)                          # graph of time series
pylab.plot(time, flux,'b.', markersize=1)

pylab.subplot(212)                          # graph of (frequency,power)
pylab.plot(sci_freq,20*scipy.log10(sci_flux),linewidth=1.0, linestyle='-', color='red')

savefig("ep2.png", dpi=300)     
pylab.show()

0 个答案:

没有答案