How to plot a circle on top of my plotted image
Show older comments
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
Answers (4)
lvn
on 9 May 2014
See this answer http://www.mathworks.com/matlabcentral/answers/98665-how-do-i-plot-a-circle-with-a-given-radius-and-center
To plot on top of an existing figure, start with
hold on
Ruben Alfaro
on 9 May 2014
0 votes
1 Comment
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:
grayImage = imread('concordorthophoto.png');
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;
radius = 500;
x = radius * cos(theta) + xCenter;
y = radius * sin(theta) + yCenter;
plot(x, y, 'r-', 'LineWidth', 3);
grid on;
Hugo Diaz
on 5 Feb 2022
0 votes
%The trick is to do it 3D, and a 2D plot is like a view from above.
% your 2D plot. If your function f(x,y) < m, then
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
Categories
Find more on Image Arithmetic in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!