python 时域转频域
时间: 2023-09-01 16:08:46 浏览: 146
Gammatone 滤波器的 Python 代码实现.zip_3DR_Gammatone_gammatone滤波器_python
5星 · 资源好评率100%
在Python中,可以使用快速傅里叶变换(FFT)将时域信号转换为频域信号。具体步骤如下:
1. 导入必要的库
```python
import numpy as np
import matplotlib.pyplot as plt
```
2. 生成时域信号
```python
N = 1000 # 采样点数
fs = 1000 # 采样率
t = np.arange(N) / fs # 时间序列
f1, f2 = 50, 120 # 信号频率
x = np.sin(2 * np.pi * f1 * t) + 0.5 * np.sin(2 * np.pi * f2 * t)
```
3. 对时域信号进行FFT变换
```python
X = np.fft.fft(x) # 对时域信号进行FFT变换
X_mag = np.abs(X) # 取振幅谱
f = np.linspace(0, fs / 2, N // 2 + 1) # 频率序列
```
4. 绘制频域信号
```python
plt.plot(f, X_mag[:N // 2 + 1]) # 绘制频谱图
plt.xlabel('Frequency (Hz)')
plt.ylabel('Magnitude')
plt.grid(True)
plt.show()
```
执行以上代码,便可以将时域信号转换为频域信号并绘制出频谱图。
阅读全文