在MATLAB中获取类似谱图的图

时间:2017-08-30 09:27:17

标签: matlab fft spectrogram contourf

我想得到一个与spectrogram函数相同类型的图,我正在尝试使用contour,但我没有得到相同的结果。我写了一个比较两个情节的小函数。该功能记录音频一秒钟,然后绘制频谱图。

function graph_comparison
    a = audiorecorder(44100,16,1);
    recordblocking(a,1);
    y = getaudiodata(a);
    figure
    subplot(1,2,1);
    spectrogram(y);
    s = spectrogram(y);
    subplot(1,2,2);
    contour(mag2db(abs(s))); %mag2db converts intensity in db
    %rotate the second plot
    view(-90, 90); 
    set(gca, 'ydir', 'reverse');
end

绘图结果示例: enter image description here

1 个答案:

答案 0 :(得分:1)

我发现它,用contour替换imagesc就足够了。