Finding the mean values of peak values using "findpeaks" function and displaying it

How do you find the mean values of specified peak values using "findpeaks" function and displaying it.
Below is my code of generating this graph
load a1.mat
data = a1(:,2)
findpeaks(data,"MinPeakHeight",50,"MinPeakDistance",290)

Answers (1)

% load a1.mat
% data = a1(:,2)
% sample data
x = linspace(0,1,1000);
Pos = [1 2 3 5 7 8]/10;
Hgt = [3 4 4 2 2 3];
Wdt = [2 6 3 3 4 6]/100;
for n = 1:length(Pos)
Gauss(n,:) = Hgt(n)*exp(-((x - Pos(n))/Wdt(n)).^2);
end
data = sum(Gauss);
[pks, loc] = findpeaks(data,"MinPeakHeight",2.50,"MinPeakDistance",10, "Annotate", "peaks");
plot(x, data, "b-", x(loc), pks, 'rv')
mp = mean(pks);
title("Mean Peak: "+mp)

Tags

Asked:

on 6 Mar 2024

Edited:

on 6 Mar 2024

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!