# Fit (wrapped) gaussian distribution to circular data

55 views (last 30 days)
CP on 5 Oct 2011
Edited: Image Analyst on 13 Nov 2020
I have a set of data that is distributed on a circle and I want to fit it to a normal distribution. What I mean is, the X axis of that plot is wrapped on a circle while the Y axis values are normally distributed. How would I go about doing this? A regular gaussian fit works fine for peaks in the middle of the circle, but when the peaks are near the seams of the circular dimension, fitting a regular gaussian distribution doesn't work very well.

Daniel Shub on 6 Oct 2011
I think you might be looking for a von Mises function. I don't think MATLAB has any built in support for von Mises functions, but you should be able to code it.
##### 2 CommentsShowHide 1 older comment
Daniel Garside on 13 Nov 2020
There is a circular statistics toolbox that has Von Mises parameter estimation as part of it:

Image Analyst on 6 Oct 2011
Edited: Image Analyst on 13 Nov 2020
Try this citation:
"Least-squares orthogonal distances Fitting of circle, sphere, ellipse, hyperbola, and parabola" Sung Joon Ahn, Wolfgang Rauh, Hans-Jurgen Warnecke, Pattern Recognition 34 (2001) pages 2283-2303
Abstract: The least-squares fitting minimizes the squares sum of error-of-fit in predefined measures. By the geometric fitting, the error distances are defined with the orthogonal, or shortest, distances from the given points to the geometric feature to be fitted. For the geometric fitting of circle/sphere/ellipse/hyperbola/parabola, simple and robust nonparametric algorithms are proposed. These are based on the coordinate description of the corresponding point on the geometric feature for the given point, where the connecting line of the two points is the shortest path from the given point to the geometric feature to be fitted.
The paper is attached here.

Daniel Garside on 13 Nov 2020
There is a circular statistics toolbox that has Von Mises parameter estimation as part of it: