用matlab绘制汉宁窗的频谱
时间: 2023-10-21 16:20:39 浏览: 304
汉宁窗的matlab实现.docx
首先,我们需要生成一个长度为 $N$ 的汉宁窗,可以使用 `hann` 函数来实现:
```matlab
N = 256; % 窗口长度
w = hann(N);
```
接下来,我们可以使用 `fft` 函数对窗口进行傅里叶变换,并取其模值的平方得到频谱:
```matlab
W = fft(w);
P = abs(W).^2;
```
最后,我们可以使用 `plot` 函数绘制出频谱:
```matlab
fs = 1000; % 采样率
f = (0:N-1)*fs/N; % 频率范围
plot(f, P);
xlabel('Frequency (Hz)');
ylabel('Power');
```
完整代码如下:
```matlab
N = 256; % 窗口长度
w = hann(N);
W = fft(w);
P = abs(W).^2;
fs = 1000; % 采样率
f = (0:N-1)*fs/N;
plot(f, P);
xlabel('Frequency (Hz)');
ylabel('Power');
```
运行该代码可以得到汉宁窗的频谱图像。
阅读全文