MATLAB Answers

How to change time interval value when using instfreq function in Matlab ?

조회 수: 8(최근 30일)
Yihan Ma
Yihan Ma 30 Jul 2019
댓글: Yihan Ma 27 Aug 2019
When I want to use instfreq function to acquire average frequency versus time,
eg. [frequency, time]=instfreq(signal,fs);
here if my signal length is 2240 points, and my sample frequency fs is 16Hz, my time interval is always 2.125s, and the length is always 63.
I find that time interval is fixed. I try several format about this function, but I fail to change the time interval.
I wounder if any other methods could help me to acquire feasible time interval in this function?

  댓글 수: 0

Sign in to comment.

채택된 답변

SaiDileep Kola
SaiDileep Kola 2 Aug 2019
편집: madhan ravi 2 Aug 2019
You can customize the time interval using Frequency Resolution, to quote an example
To explain from your case
fs = 16;
t = (0:1/fs:140-1/fs)';
x = sin(2*pi*200*t) + randn(size(t))/4; %this is the signal I have taken to explain
instfreq(x,t) % gives default time interval
%instead you can do as below
[p,fd,td] = pspectrum(x,t,'spectrogram','FrequencyResolution',40);
% the last argument is to customize the time interval
% you get the range of argument when you execute the command if it exceeds the range
[f1,t1]=instfreq(p,fd,td);

추가 답변(0개)

제품


릴리스

R2018b

Translated by