spectrogram函数用法MATLAB
时间: 2023-08-27 14:06:57 浏览: 291
全面剖析STFT(短时傅里叶变换)spectrogram函数用法
5星 · 资源好评率100%
在MATLAB中,spectrogram函数用于计算并绘制信号的短时傅里叶变换(STFT)谱图。下面是spectrogram函数的基本用法:
```matlab
spectrogram(x,window,noverlap,nfft,fs)
```
其中,x是输入信号向量,window是窗函数,noverlap是重叠的样本数,nfft是FFT点数,fs是采样率。
例如,以下示例代码演示如何使用spectrogram函数绘制一个正弦波的谱图:
```matlab
% 生成正弦波
fs = 1000; % 采样率
t = 0:1/fs:1-1/fs; % 时间向量
f = 10; % 正弦波频率
x = sin(2*pi*f*t); % 正弦波信号
% 计算并绘制谱图
window = hamming(128); % 窗函数
noverlap = length(window) - 1; % 重叠样本数
nfft = 256; % FFT点数
spectrogram(x,window,noverlap,nfft,fs,'yaxis');
```
运行以上代码,将会绘制出一个正弦波的谱图。在谱图中,横轴表示时间,纵轴表示频率,颜色表示信号的能量。
阅读全文