/
fft_test.py
22 lines (20 loc) · 928 Bytes
/
fft_test.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import numpy as np
from scipy.fftpack import fftfreq
from numpy.fft import fft
from matplotlib import pyplot as plt
from scipy.io import loadmat
from os.path import dirname
from likefunctions_boston import plotlikeconfig
plotlikeconfig(title='FFT', xlabel='Frequency(Hz)', ylabel='Strength')
samples = 1200
x = np.linspace(0, 1, samples)
data_bearing = np.zeros(samples * 3)
data_bearing[:samples] = 2 * np.sin(2 * np.pi * 200 * x) + 2 * np.sin(2 * np.pi * 100 * x)
fft_data_bearing = fft(data_bearing)
# real_fft_data_bearing=rfft(data_bearing)
freq_fft_data_bearing = fftfreq(fft_data_bearing.size, 1 / samples)
freq_limit = int(fft_data_bearing.size / 2)
signal_limit = freq_limit
plt.stem(freq_fft_data_bearing[:freq_limit], abs(fft_data_bearing[:freq_limit]), linefmt='', use_line_collection=True)
# plt.stem(freq_fft_data_bearing[:freq_limit],abs(real_fft_data_bearing)[:freq_limit],use_line_collection=True)
plt.show()