Ich verwende eine kontinuierliche Wavelet-Transformation nach Morlet. Ich habe ein wscalogram
Signal und möchte jetzt die Frequenz wie im folgenden Bild darstellen, aber ich weiß nicht, wie ich es machen soll:
Ich habe die scal2freq
MATLAB-Funktion verwendet, um Skalen in Pseudofrequenzen umzuwandeln. Außerdem habe ich einige Frequenzen in meinem Signal, die ein großes Dämpfungsverhältnis (4%) aufweisen, sodass sie in der Darstellung nicht gut sichtbar sind. Wie kann ich diese stark gedämpften Modi übertreiben?
Ich benutze MATLAB, hier sind meine Codes:
% Import the text4.txt to matlab workspace. and save it under name "data"
t=linspace(0,30,301);
Fs=ceil(inv(t(2)-t(1)));
x=data(:,4); % use x=data(:,3),x=data(:,5) too. first column is time,second is refrence
wname = 'morl';
scales = 1:1:256;
coefs = cwt(x,scales,wname,'lvlabs');
freq = scal2frq(scales,wname,1/Fs);
surf(t,freq,abs(coefs));shading('interp');
axis tight; xlabel('Seconds'); ylabel('Pseudo-Frequency (Hz)');
axis([0 30 0 1 0 60])
xlabel('Time'); ylabel('Frequency');
figure;
sc=wscalogram('image',coefs,'scales',freq,'ydata',x);
hold on
Meine aktuelle Handlung sieht so aus: