2017-08-01 26 views
2

我想要做的是用一条线连接两组点(基于x,y)。该线应根据两组的索引绘制。含义set1(x,y)应连接到set2(x,y)其中xy是两组中的相同指数。用基于索引的直线连接两组点(point)

我有什么到目前为止是这样的:

set1 = [1,2; 3,4; 5,6]; 
set2 = [10,20; 30,40; 50,60]; 
plot(set1(:,1),set1(:,2),'b+',set2(:,1),set2(:,2),'g+') 

显示我的set1在蓝点的项目和绿色点set2。含义我想划分[1,2][10,20]之间的一条线

是否有任何内置函数,或者是否需要创建表示线的第三个集合? [ [1,2; 10,20], [3,4; 30,40], ... ]

+3

类型:'plot([set1(:,1)set2(:,1)]。 ',[set1(:,2)set2(:,2)]'','r')' – EBH

+0

@EBH这是它可以自由添加这个作为答案,如果你喜欢 – user1234

+0

@EBH请添加为答案,所以我可以upvote。 –

回答

3

您无需构建函数,只需正确使用plot即可。如果输入x值矩阵和y值矩阵,则plot将其解释为多个数据序列,其中每列是数据序列。

所以,如果你重新组织你设置为:

x = [set1(:,1) set2(:,1)].' 
y = [set1(:,2) set2(:,2)].' 

那么你可以键入:

plot(x,y) 

enter image description here

与我们的数据代码:

set1 = [1,2; 3,4; 5,6]; 
set2 = [10,20; 30,40; 50,60]; 
plot(set1(:,1),set1(:,2),'b+',set2(:,1),set2(:,2),'g+') 
hold on 
x = [set1(:,1) set2(:,1)].'; 
y = [set1(:,2) set2(:,2)].'; 
plot(x,y,'r') 
hold off