calculate distance between XY pair

3 次查看(过去 30 天)
Hi
I want to calculate distance between XY points but as pair not all of them.
I used 'pdist' and 'pdist2' function but they calculate distance for all points.
I want to calculate point 1(xy) with point 2(xy) then point 2(xy) with point 3(xy) and go on (it is a part of recorded movments).
I think I will need to write a loop but I am not sure about proper function.
  3 个评论
infinity
infinity 2019-6-27
Hello,
So, I think the anwser below is what you want.

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2019-6-26
sqrt(diff(x).^2 + diff(y).^2)

更多回答(1 个)

Pawan Sharma
Pawan Sharma 2020-7-30
You can use the method suggested by Walter in a forloop to get the required ansewer
A = [ 1 3; 2 4; 3 6]
distanceList = zeros(1,size(A,1)-1); % calculated distance will be stored here
for i = 1:size(A,1)-1
data1 = A(i,:);
data2 = A(i+1,:)
distance = sqrt(((data1(1)-data2(1))^2)+(data1(2)-data2(2))^2);
distanceList(i) = distance;
end

类别

Help CenterFile Exchange 中查找有关 Statistics and Machine Learning Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by