利用python对振动数据进行傅里叶变换
时间: 2023-09-30 22:05:05 浏览: 221
傅里叶变换_Python实现
3星 · 编辑精心推荐
傅里叶变换是将信号从时域转换到频域的一种方法。在Python中,我们可以使用NumPy库来进行傅里叶变换。下面是一个简单的示例代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成随机振动信号
fs = 1000 # 采样频率
t = np.arange(0, 1, 1/fs) # 采样时间
f1 = 10 # 信号频率
f2 = 50
f3 = 100
x = np.sin(2*np.pi*f1*t) + 0.5*np.sin(2*np.pi*f2*t) + 2*np.sin(2*np.pi*f3*t)
# 进行傅里叶变换
X = np.fft.fft(x)
freq = np.fft.fftfreq(len(x), 1/fs)
# 绘制时域和频域波形
fig, ax = plt.subplots(2, 1)
ax[0].plot(t, x)
ax[1].plot(freq, np.abs(X))
plt.show()
```
在上面的代码中,我们首先生成了一个包含三个频率分别为10Hz、50Hz和100Hz的随机振动信号。然后使用`np.fft.fft()`函数进行傅里叶变换,并使用`np.fft.fftfreq()`函数生成相应的频率轴。最后,使用Matplotlib库绘制出时域和频域波形。
你可以根据自己的需要更改代码,例如改变信号的频率、振幅等。
阅读全文