Python 生成一个5HZ和12HZ叠加的正弦波
时间: 2024-10-06 14:04:45 浏览: 29
fbprophet案例之python实现
在Python中,你可以使用matplotlib库的`sin()`函数结合numpy库来生成正弦波,并通过调整频率创建叠加波形。下面是一个简单的示例,演示如何生成频率分别为5Hz和12Hz的正弦波并将其叠加:
```python
import numpy as np
import matplotlib.pyplot as plt
from scipy.signal import sinewave
# 定义时间轴
t = np.arange(0, 10, 1/100) # 从0到10秒,步长为0.01秒
# 创建两个不同频率的正弦波
freq1 = 5 # 5 Hz
freq2 = 12 # 12 Hz
signal1 = sinewave(t, freq1)
signal2 = sinewave(t, freq2)
# 叠加信号
叠加信号 = signal1 + signal2
# 绘制波形
plt.figure()
plt.plot(t, signal1, label=f"5 Hz")
plt.plot(t, signal2, label=f"12 Hz")
plt.plot(t, 叠加信号, label="叠加", linestyle='--') # 使用虚线表示叠加部分
plt.legend()
plt.xlabel('Time (s)')
plt.ylabel('Amplitude')
plt.title('5 Hz and 12 Hz Sinusoids Overlaid')
plt.show()
```
阅读全文