How to fit a gaussian curve over multiple peaks.

Hello everybody,
I am new in this community, and a newbie with MATLAB so please forgive and silly questions I might have. :)
Now to my problem: I have a plot that has many gaussian plots in varying intensities. I want to fit a Gaussian plot over all these many plots. Is there a way to make this automatic? If not, how would you suggest that I do it? I thought of just finding the value of each one of the peaks of the plots and fitting a gaussian throught that but I am not sure how accurate that would be.
Thanks a lot in advance!!

1 Comment

I'd start with just using all the points you have to generate the individuals into a single vector and fit it...

Sign in to comment.

 Accepted Answer

If I understand you correctly, you want to fit one Gaussian over the peaks of all the individual Gaussian peaks. If you have the Signal Processing Toolbox, use the findpeaks function to determine the coordinates of the maxima of the individual peaks, then fit those values. You will likely have to experiment with the findpeaks parameters to find only the peaks of the individual Gaussians, and not the peaks of the noise as well.

2 Comments

Hi,
I have an opposite question! I have one Gaussian peak, which I would like to divide it to more peaks and calculate the amount of partial peak. may you please advise me?
Look up "Gaussian Mixture Models" in the help, if you have the Statistics and Machine Learning Toolbox.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!