# How to plot a circle on top of my plotted image

79 views (last 30 days)
Ruben Alfaro on 9 May 2014
Answered: Hugo Diaz on 5 Feb 2022
I have an image plotted and I wanted to plot a circle on top of it with the same centroid of the image.
I want the radius to be 500 and I want it done with a red color, of somebody could help me with this.
thank you very much

lvn on 9 May 2014
hold on

Ruben Alfaro on 9 May 2014
Thank you,
But it doesnt seem to work for me, maybe im doing something wrong. can somebody help me figure it out or recommend another way of doing this?
Roberto on 9 May 2014
post the error you're having, or explain why it doesn't work for you?

Image Analyst on 9 May 2014
Try this:
imshow(grayImage);
axis on;
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0 0 1 1]);
[rows, columns, numberOfColorChannels] = size(grayImage);
hold on; % Don't let plot blow away the image.
xCenter = columns / 2;
yCenter = rows / 2;
theta = 0 : 0.01 : 2*pi;
x = radius * cos(theta) + xCenter;
y = radius * sin(theta) + yCenter;
plot(x, y, 'r-', 'LineWidth', 3);
grid on;

Hugo Diaz on 5 Feb 2022
%The trick is to do it 3D, and a 2D plot is like a view from above.
hold on
r = 1;
teta = -pi:0.01:pi;
x = r * cos(teta);
y = r * sin(teta);
plot3(x, y, m * ones(1, numel(x)), 'Color','k')
hold off