How to plot spectrogram on Matlab App Designer with UIAxes?
이전 댓글 표시
Hello, I'm trying to use spectrogram function to plot spectrogram with Matlab App Designer, not the old GUI. This means I got uifigures and uiaxes, not figure and axes in the old GUI system. There are some answers about using spectrogram function in the old GUI system, which are using axes() function to set current axes, unfortunately, I haven't seen something about using spectrogram function in App Designer, can anyone help, plz?
채택된 답변
추가 답변 (1개)
Please see below for an update using AppDesigner - Using 2021a
Requires signal processing toolbox - but spectrogram outputs should be similar to pspectrum outputs
% dimensions of app.dat2plot = [1 2886144]
% Sampling frequency is 4kHz
[S,F,T] = pspectrum(transpose(app.dat2plot),4000,'spectrogram', 'FrequencyLimits',[0 50],'MinThreshold',-110);
imagesc(app.UIAxes2, T, flipud(F), rot90(log(abs(S')))); %plot the log spectrum
set(app.UIAxes2,'YDir', 'normal'); % flip the Y Axis
Outputs image below in AppDesigner
댓글 수: 1
Andrew Cline
2022년 12월 1일
Thanks for this answer. Never would have figured this out myself.
Also, you can do this afterwards to fit it to the window
axis(app.UIAxes2,'tight')
카테고리
도움말 센터 및 File Exchange에서 大型图像文件에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!