こんにちは、私は非常に騒々しいFFTを持っています。どのように私のコードハミングウィンドウには、それほど騒々しいように適用する。私のコードを見てください:ハミングウィンドウ、python 2.7
plt.subplot(212)
plt.title('Fast Fourier Transform')
plt.ylabel('Power [a.u.]')
plt.xlabel('Frequency Hz')
fft1 = (Bx[51:-14])
fft2 = (By[1:-14])
for dataset in [fft1]:
dataset = np.asarray(dataset)
psd = np.abs(np.fft.fft(dataset))**2.5
freq = np.fft.fftfreq(dataset.size, float(300)/dataset.size)
plt.semilogy(freq[freq>0], psd[freq>0]/dataset.size**2, color='r')
for dataset2 in [fft2]:
dataset2 = np.asarray(dataset2)
psd2 = np.abs(np.fft.fft(dataset2))**2.5
freq2 = np.fft.fftfreq(dataset2.size, float(300)/dataset2.size)
plt.semilogy(freq2[freq2>0], psd2[freq2>0]/dataset2.size**2, color='b')
(https://docs.scipy.org/doc/scipy-0.13.0/reference/generated/scipy.signal.hamming.html)と、この(https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.hamming.html)まだドンそれを私のコードにどのように適用するかを手がかりにしています。何か案は?私が言ったように、第二の絵には私が必要なものが見えます。 ブラックマンのウィンドウも適用するのが良いでしょうが、まだそれをどのように追加する手がかりではありません。この適用
:
freqs, psd = scipy.signal.welch(dataset, fs=300, window='hamming')
は私の希望チャートのように表示されない、ということを私に与えました。
実際のサンプルレートではないようです。私はあなたの質問に基づいて推測していたので、あなたの実際のサンプリングレート(約900かもしれない)を使用してください。また、Welchの方法は、周波数分解能を犠牲にしてパワースペクトルのより滑らかな推定値を計算することに留意してください。 – bnaecker