举一个连续信号进行傅里叶变换的代码
时间: 2024-02-26 12:56:50 浏览: 65
【matlab代码】对信号进行傅里叶变换.m
5星 · 资源好评率100%
以下是一个连续信号进行傅里叶变换的 Python 代码示例:
```python
import numpy as np
import matplotlib.pyplot as plt
# 定义信号的时间范围和采样率
t_start = -10
t_end = 10
Fs = 1000
# 生成时间序列
t = np.arange(t_start, t_end, 1 / Fs)
# 定义信号
x = np.sin(2 * np.pi * 5 * t) + 0.5 * np.sin(2 * np.pi * 10 * t) + 2 * np.sin(2 * np.pi * 20 * t)
# 进行傅里叶变换
X = np.fft.fft(x)
# 计算频率轴上的值
freqs = np.fft.fftfreq(len(x)) * Fs
# 绘制幅度谱
plt.plot(freqs, np.abs(X))
plt.xlabel('Frequency (Hz)')
plt.ylabel('Magnitude')
plt.show()
```
这个代码示例生成了一个由三个正弦波组成的信号,并且使用 `np.fft.fft` 函数和 `np.fft.fftfreq` 函数进行傅里叶变换和频率轴上的计算。最后,使用 Matplotlib 库绘制了傅里叶变换后的幅度谱。
阅读全文