MATLAB实现一组随机点分成两组,每组随机点分别与一个特定点连线
MATLAB实现一组随机点分成两组,每组随机点分别与一个特定点连线
1.首先需要绘制一组随机点
x=rand(1,10);
y=rand(1,10);
plot(x,y,'*r');
效果图:

这组随机点总共有十个,通过rand()函数在0-1这个范围内分别获取了十个x坐标和十个y坐标,组成了十个坐标点,这十个坐标点是随机的。
2.将这一组坐标点分成两组,并用不同的颜色区分
x=rand(1,10);
y=rand(1,10);
x1=[x(1,1),x(1,2),x(1,3),x(1,4),x(1,5)];
x2=[x(1,6),x(1,7),x(1,8),x(1,9),x(1,10)];
y1=[y(1,1),y(1,2),y(1,3),y(1,4),y(1,5)];
y2=[y(1,6),x(1,7),x(1,8),x(1,9),x(1,10)];
plot(x1,y1,'*r',x2,y2,'*g');
效果图:

就是把十个随机的x坐标和十个随机的y坐标五五分开,分别放到两个数组里面,生成两组不同颜色的点。
3.把这两组点分别与一个特定的坐标点进行连线
x=rand(1,10);
y=rand(1,10);
x1=[x(1,1),x(1,2),x(1,3),x(1,4),x(1,5)];
x2=[x(1,6),x(1,7),x(1,8),x(1,9),x(1,10)];
y1=[y(1,1),y(1,2),y(1,3),y(1,4),y(1,5)];
y2=[y(1,6),x(1,7),x(1,8),x(1,9),x(1,10)];
plot(x1,y1,'*r',x2,y2,'*g', 0.4,0.6,'.b',0.7,0.7,'.b');
line([0.4,x(1,1)],[0.6,y(1,1)]);
line([0.4,x(1,2)],[0.6,y(1,2)]);
line([0.4,x(1,3)],[0.6,y(1,3)]);
line([0.4,x(1,4)],[0.6,y(1,4)]);
line([0.4,x(1,5)],[0.6,y(1,5)]);
line([0.7,x2(1,1)],[0.7,y2(1,1)]);
line([0.7,x2(1,2)],[0.7,y2(1,2)]);
line([0.7,x2(1,3)],[0.7,y2(1,3)]);
line([0.7,x2(1,4)],[0.7,y2(1,4)]);
line([0.7,x2(1,5)],[0.7,y2(1,5)]);
效果图 :

注意事项:连线的时候前五个点为一组,点的坐标用x,y数组里面的,后面五个点那一组不能接着用x,y里面的坐标,要用x2,y2里面的坐标,否则只能连出6条正确的线,后四条连得不准。
后五条连线不能是这样写:
line([0.7,x(1,6)],[0.7,y(1,6)]);
line([0.7,x(1,7)],[0.7,y(1,7)]);
line([0.7,x(1,8)],[0.7,y(1,8)]);
line([0.7,x(1,9)],[0.7,y(1,9)]);
line([0.7,x(1,10)],[0.7,y(1,10)]);
浙公网安备 33010602011771号