%// Set parameters
R = sqrt(10) ; %// radius
C = [0 0]; %// center [x y]
N = 50; %// number of points inside circle
%// generate circle boundary
t = linspace(0, 2*pi,100);
x = R*cos(t) + C(1);
y = R*sin(t) + C(2);
%// generate random points inside it
th = 2*pi*rand(N,1);
r = R*rand(N,1);
xR = r.*cos(th) + C(1);
yR = r.*sin(th) + C(2);
%// Plot everything
figure(1), clf, hold on
plot(x,y,'b')
text(0,0,'C')
plot(xR,yR,'p')
axis equal
radius=cell(4,1);
radius {1,1}=1;
radius {1,2}=0.5;
radius {1,3}=3;
radius {1,4}=2;
for j=1:4
for i=1:50
theta=0:.01:2*pi;
x=radius {1,j}*cos(theta)+rank1{i,2}(1);
y=radius {1,j}*sin(theta)+rank1{i,2}(2);
plot(x,y)
hold on
end
end
当我在没有重叠的情况下跑步时,如何同时绘制5个数字?当我运行代码时,它给出了1个数字,所有圆圈重叠。我想要一个带有原始圆和随机点的图形,其他4个与图1相同但是(在它内部有相同的圆和相同的随机点),在其中使用给定半径的其他圆形。
答案 0 :(得分:1)
如果您想在新图上绘图,请使用figure()
创建新图,或者更有用的是,使用figure(1)
,figure(2)
等,然后您就可以了回到之前打开的数字,例如:figure(1)
,返回图1并继续编辑。
答案 1 :(得分:1)
如果你想要五个不同的数字使用:
figure(j), plot(x,y)
for j=1:4
for i=1:50
theta=0:.01:2*pi;
x=radius {1,j}*cos(theta)+rank1{i,2}(1);
y=radius {1,j}*sin(theta)+rank1{i,2}(2);
end
figure(j+1),plot(x,y)
end