You cannot do anything until you decide what you need to do.
You say to need to approximate it with a circle. If the circle were chosen as the smallest circle that contains ALL points, then theat would define a unique circle. But you say the circle need not contain ALL points. And that suddenly make the problem no longer have a solution, because approximate is not a word with solid definition that makes anything unque.
No, circlefit does NOT do what you want. Certaoinly not until you define what it is you want.
I wonder if possibly the desired circle is one that contains the same "area" as do your points. And then that begs the question, what region do the points inhabit? We need to know that, before we can compute an area.
So possibly, just possibly, you want to compute the convex hull of your point set. A convex hull is a well posed operation. It is the smallest convex object (composed of linear segments around the perimeter) that contains all of the points.
Since I lack your data, and all you gave us is a picture of your points, I'll make some up as an example.
PS = polyshape(X(H),Y(H));
Now, the area of that convex region is
ANd the centroid is:
And, what is the radius of a circle that has the same area as we see in areaps? Since this is surely homework, you need to do some thinking. ALl that requires is the formula for the area of a circle, to compute the radius, when the area is given.
Note that the circle that has the same area as a point set will contain SOME of the points, but unless the points are perfectly circular, some will lie inside, and some outside. (Actually, I will concede if the points all fall on a perfectly regular polygon, then the circle with the same area will fall slightly inside the perimeter points, if you want to be picky. :)
Now, can you plot a circle with that given radius, and the given center? I've already done too much of what is probably your homework to do any more.