功率谱密度python代码
时间: 2023-07-22 15:00:35 浏览: 212
脑电信号频谱、能量和功率谱密度分析代码
5星 · 资源好评率100%
以下是一个计算功率谱密度的示例Python代码:
```python
import numpy as np
from scipy import signal
import matplotlib.pyplot as plt
# 生成一个随机信号
fs = 1000 # 采样率
T = 1 / fs # 采样周期
N = 1000 # 信号长度
t = np.arange(0, N*T, T) # 时间向量
x = np.sin(2*np.pi*50*t) + np.sin(2*np.pi*120*t) # 输入信号
# 计算功率谱密度
f, Pxx = signal.welch(x, fs)
# 绘制功率谱密度图
plt.figure()
plt.semilogy(f, Pxx)
plt.xlabel('Frequency [Hz]')
plt.ylabel('Power Spectral Density')
plt.title('Power Spectral Density')
plt.grid()
plt.show()
```
以上代码使用`scipy`库中的`signal.welch`函数来计算信号的功率谱密度,并使用`matplotlib`库绘制功率谱密度图。你可以根据需要修改采样率、信号长度和输入信号。
阅读全文