How to find number of times graph goes back to zero

M
Mikaela_sf · Feb 25, 2021 · 1.9K views
Question
Hello everyone, I am new to MATLAB and I am currently plotting a normalised gyroscope data as in the picture below, and I am trying to count the number of the graph trying to go back to zero (on the word, number of the graph descending after reaching each peak).   For example, if I calculate it manually fromthe graph, it's around 9 times it tries to go back to zero. But I am trying to do analysis on big data so I really ned way of finding it by MATLAB.
Expert Answer
Profile picture of Prashant Kumar
Prashant Kumar PhD Expert
Answered Aug 20, 2026
To find the troughs, invert the ‘y’ values and use findpeaks:
 
Example:
 
x = linspace(0,250,250);                    % Create Data
y = 0.25*sin(0.25*pi*x) .* exp(-(x-125).^2./1000) + exp(-(x-125).^2./1000);

[pks,plocs] = findpeaks(y);                 % Find peaks
[trs,tlocs] = findpeaks(0.1+max(y) - y);    % Find troughs

figure(1)
plot(x, y)
hold on
plot(x(plocs), y(plocs), '^r', 'MarkerFaceColor','r')              % Plot peaks
plot(x(tlocs), y(tlocs), 'vg', 'MarkerFaceColor','g')              % Plot troughs
hold off
grid

produces:

 

graph

100% Run Guarantee 3-Hour Fast-Track Delivery

Need a Custom Version or Complete Simulation for This Problem?

Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.

Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!