窗函数的幅频谱和相频谱用python怎么画
时间: 2023-12-25 08:23:15 浏览: 68
用汉宁窗函数 的频谱分析源代码.rar_fault motor_汉宁窗_窗函数_频率泄漏_频谱泄漏
5星 · 资源好评率100%
要绘制窗函数的幅频谱和相频谱,可以使用Python中的NumPy和Matplotlib库。
首先,需要生成一个窗函数。可以使用NumPy中的hanning函数来生成一个汉宁窗。代码如下:
```python
import numpy as np
window = np.hanning(51) # 生成51点的汉宁窗
```
接下来,可以使用NumPy中的fft函数来计算窗函数的快速傅里叶变换(FFT)。代码如下:
```python
import numpy as np
window = np.hanning(51) # 生成51点的汉宁窗
fft_window = np.fft.fft(window) # 计算窗函数的FFT
```
然后,可以使用Matplotlib库来绘制窗函数的幅频谱和相频谱。代码如下:
```python
import numpy as np
import matplotlib.pyplot as plt
window = np.hanning(51) # 生成51点的汉宁窗
fft_window = np.fft.fft(window) # 计算窗函数的FFT
# 绘制幅频谱
plt.subplot(211)
plt.plot(np.abs(fft_window))
plt.title('Amplitude Spectrum')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Amplitude')
# 绘制相频谱
plt.subplot(212)
plt.plot(np.angle(fft_window))
plt.title('Phase Spectrum')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Phase (Radians)')
plt.show()
```
这段代码将绘制窗函数的幅频谱和相频谱,分别在上下两个子图中显示。
阅读全文