I did this way back, and couldn’t find a direct in built function. So used this.

circle.m

function circle(x,y,r)
%x and y are the coordinates of the center of the circle
%r is the radius of the circle
%0.01 is the angle step, bigger values will draw the circle faster but
%you might notice imperfections (not very smooth)
ang=0:0.01:2*pi;
xp=r*cos(ang);
yp=r*sin(ang);
plot(x+xp,y+yp,'Color','black','LineWidth',2);
end

If you have an array of data and want to plot those:

[cir] = [ ...

-0.79370E+01 0.00000E+00 0.25000E+01
0.00000E+00 0.00000E+00 0.25000E+01
0.79370E+01 0.00000E+00 0.25000E+01
-0.11905E+02 0.39685E+01 0.25000E+01
-0.39685E+01 0.39685E+01 0.25000E+01
0.39685E+01 0.39685E+01 0.25000E+01
0.11905E+02 0.39685E+01 0.25000E+01
-0.79370E+01 0.79370E+01 0.25000E+01
0.00000E+00 0.79370E+01 0.25000E+01
0.79370E+01 0.79370E+01 0.25000E+01];

xc = cir(:,1);
yc = cir(:,2);
rc = cir(:,3);
no = length (xc)
%figure,
for i= 1:no
  circle(xc(i),yc(i),rc(i))
  i=i+1;
  hold on
end
hold on

Last modified: 2017-07-20