How to get the Z-Axis of power spectrogram?
조회 수: 3 (최근 30일)
이전 댓글 표시
I want to get the Z-axis of spectrogram stored in a matrix. I can see the X,Y and Z values, whenever I put the cursor anywhere on the spectrogram. But How can I get the Z values for the whole spectrogram in a matrix?
댓글 수: 0
채택된 답변
Star Strider
2022년 12월 9일
To see it in 3D, use the view function and choose an appropriate azimuth and elevation. (It was a surf plot in earlier releases, so this would be straightforward. It now requires outputs and a separate surf call.)
An example from the documentation —
fs = 1000;
t = 0:1/fs:2-1/fs;
y = chirp(t,100,1,200,'quadratic');
figure
spectrogram(y,100,80,100,fs,'yaxis')
colormap(turbo)
[sx,fx,tx] = spectrogram(y,100,80,100,fs,'yaxis'); % Call 'spectrogram' With Outputs
Ax = gca;
xlbl = Ax.XLabel.String;
ylbl = Ax.YLabel.String;
hcb = findobj(gcf, 'Type','colorbar');
cbstr = hcb.Label.String;
figure
surf(tx,fx,mag2db(abs(sx)), 'EdgeColor','none') % Plot Wioth 'surf'
colormap(turbo)
hcb2 = colorbar;
hcb2.Label.String = cbstr;
view(-30,60) % Set Camera Azimuth & Elevation
xlabel(xlbl)
ylabel(ylbl)
.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Time-Frequency Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!