求在一个圆内均匀分布n个点(如n=360)的坐标,用matlab怎么实现?

1)求在一个圆内均匀分布n个点(如n=360)的坐标,用matlab怎么实现?谢谢

如能实现上述,感激不尽。

2)另外,如果加上一个条件(这个点不能与圆心重合)又将如何实现?

实现第一个问题就提供悬赏分。
均匀分布,可能是我没说清楚,我是想说在圆内等间距分布。谢谢!

to wacs5:谢谢你这么快回贴。我觉得你等面积的那个方法很好,但是我有个问题,由于选择rand产生是均匀分布随机数,所以这样产生的点还不能算均匀分布,画出来的图可以明显看到点不是均匀分布在圆上。不知道是否还有别的办法?
谢谢啦:)

等面积分布,就是把圆分成很多块面积相等的区域
n=360;
R=5;
t=0:0.02:2*pi;
plot(R*cos(t),R*sin(t),'r');
axis square
hold on

r=R*sqrt(rand(1,n));
seta=2*pi*rand(1,n);
x=r.*cos(seta);
y=r.*sin(seta);
plot(x,y,'*')

如果是等角度等半径。会感觉中心会比上面那个图很密。
n=360;
R=5;
t=0:0.02:2*pi;
plot(R*cos(t),R*sin(t),'r');
axis square
hold on

r=R*rand(1,n);
seta=2*pi*rand(1,n);
x=r.*cos(seta);
y=r.*sin(seta);
plot(x,y,'*')
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-06-12
啥子叫做均匀分布?等间距?等分圆周?