MATLAB计算一组坐标点的相互距离(pdist、squareform、pdist2函数)

如果有一组坐标P(X,Y),包含多个点的X和Y坐标,计算其坐标点之间的相互距离

一、坐标点

P=[1 1;5 2;3 6;8 8;4 5;5 1; 6 9];

二、pdist函数

输出的结果是一维数组,获得任意两个坐标之间的距离,但没有对应关系

D=pdist(P)

MATLAB计算一组坐标点的相互距离(pdist、squareform、pdist2函数)_第1张图片

三、squareform()函数

获取第i和第j个坐标之间的距离

Z = squareform(D)

Z(i,j)即为第i和第j个坐标之间的距离。
MATLAB计算一组坐标点的相互距离(pdist、squareform、pdist2函数)_第2张图片

四、pdist2()函数

可直接得到Z矩阵

P=[1 1;5 2;3 6;8 8;4 5;5 1; 6 9];
z=pdist2(P,P)

MATLAB计算一组坐标点的相互距离(pdist、squareform、pdist2函数)_第3张图片

你可能感兴趣的:(Matlab,matlab,开发语言)