Need a script to plot a circle with given radius and center
34 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Manu Manu
am 16 Mär. 2014
Kommentiert: Image Analyst
am 31 Aug. 2021
I need some help guys! Need a script to plot a circle with center(5,7) and radius 3. I have these:
clear clc
r=3;
t=0:pi/24:2*pi;
x=r*cos(t);
y=r*sin(t);
plot(x,y,x,y)
grid on
But only the radius works.. help please.
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 16 Mär. 2014
Bearbeitet: Image Analyst
am 16 Mär. 2014
Here's one way from the FAQ that is most similar to yours:
xCenter = 5;
yCenter = 7;
theta = 0 : 0.01 : 2*pi;
radius = 3;
x = radius * cos(theta) + xCenter;
y = radius * sin(theta) + yCenter;
plot(x, y);
axis square;
xlim([0 10]);
ylim([0 12]);
grid on;
axis equal;
3 Kommentare
Image Analyst
am 31 Aug. 2021
@picheri naveen You can choose whatever angle increment you want. If you want bigger angle increments, change 0.01 to 0.3 or whatever you want. Or if you want to specify the number of segments on the circle, you can use linspace():
startAngle = 0;
endAngle = 2 * pi;
numberOfSegments = 360; % Whatever you want.
theta = linspace(startAngle, endAngle, numberOfSegments);
If the starting and ending angle are not 0 and 2*pi, then you'll get a partial circle (arc). And of course if your ending angle is more than 2*pi than your starting angle, you'll get some overlap.
The more you choose, the smoother the circle will be. Less will make it more polygon-like. For example if you had only 6 segments, it would look like a hexagon instead of a circle.
Weitere Antworten (2)
Image Analyst
am 11 Jun. 2020
Here's another way
viscircles([5,7], 3);
2 Kommentare
Tamara del Águila
am 26 Mai 2021
but which units does viscircle use? When I draw a circular roi with drawcircle, and then I plot in the obtained coordinates a circle with viscircle, the size do not match...
Image Analyst
am 26 Mai 2021
I believe they both use units of whatever the axes control is using. I think they should be the same. Post a small snippet of your code showing how you compute "size" and a screenshot showing the different circle sizes.
Alamgir Khan
am 11 Jun. 2020
Bearbeitet: Alamgir Khan
am 11 Jun. 2020
In parametric form of the circle of radius 1, at centred(0,0) x=cos(2 pi×t) and y=sin(2pi ×t) using ezplot command
0 Kommentare
Siehe auch
Kategorien
Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!