How to determine the start time and the end time of the signal
10 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Yew Jen Chong
le 16 Juin 2022
Commenté : Yew Jen Chong
le 16 Juin 2022
Hi, I want to find the start time and the end time of the signal as shown in figure below.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1033925/image.png)
I tried using "findchangepts" command to identify the both time but the x-axis is incorrect. Is someone know what is the reason?
In addition, I also not sure how accurate it is by using this method.
findchangepts(signal.CurrentRMS_amp_,'MaxNumChanges',3, 'Statistic','rms')
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1033930/image.png)
Is there any methods to find the time accurately?
Any advice would be appreciated.
Thank you.
0 commentaires
Réponse acceptée
Sam Chak
le 16 Juin 2022
Alternatively, try this. The findchangepts function actually works.
T = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1033920/signal.csv');
t = T.(1);
y = T.(2);
ipt = findchangepts(y, 'MaxNumChanges', 10);
Tstart = t(ipt(1))
Tfinal = t(ipt(end))
plot(t, y)
hold on
plot(Tstart, y(ipt(1)), 'ro', 'linewidth', 1.5, 'MarkerSize', 14)
plot(Tfinal, y(ipt(end)), 'ro', 'linewidth', 1.5, 'MarkerSize', 14)
xlim([1.05 1.65])
Plus de réponses (1)
KSSV
le 16 Juin 2022
T = readtable('https://in.mathworks.com/matlabcentral/answers/uploaded_files/1033920/signal.csv') ;
t = T.(1) ;
x = T.(2) ;
idx = x>0.1 ;
plot(t,x,'r',t(idx),x(idx),'b')
Voir également
Catégories
En savoir plus sur Parametric Spectral Estimation dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!