求教这个HHT三维谱是怎么画出来的?
Cena马给了这个图谱,但是他始终没有说明这个图是怎么画的,求大神指教算了,没人回答。cena马也太小气了。我自己已经解决了。 你好 请问你能分享一下你图谱的程序吗? 是三维图吗?matlab自带命令能实现吗? 求指教,怎么出来的 楼主为什么不回复 function plot_hht_3d(imf,numfreq,fs,ANGLE)
if nargin<3
fs=1;
ANGLE=[-37.5,30];
end
if nargin<4
if size(fs,2)>1
ANGLE=fs;
fs=1;
else
ANGLE=[-37.5,30];
end
end
N=size(imf,2);
=hhspectrum(imf);
=size(f);
MaxFreq=max(max(f));
MaxFreq=ceil(MaxFreq/0.5)*0.5;
if nargin<2
numfreq=512;
end
df=linspace(0,MaxFreq,numfreq);
Spectrum=zeros(numfreq,n);
Temp=f;
Temp=min(round((Temp/MaxFreq)*numfreq)+1,numfreq);
for k=1:m
for u=1:n
Spectrum(Temp(k,u),u)=Spectrum(Temp(k,u),u)+A(k,u);
end
end
df=df*fs;
figure
clf
mesh(tt,df,Spectrum);
set(gca,'XLim',);
xlabel('采样点数/n');
if fs==1
ylabel('归一化频率');
else
ylabel('频率/Hz');
end
zlabel('幅值');
title('三维联合时频图');
colormap jet;
shading interp;
view(ANGLE(1),ANGLE(2));
set(gca,'YLim',);
end
要要切克闹!!!!
页:
[1]