Euclidean distance for 3D data
63 views (last 30 days)
Show older comments
Hye, can anybody help me, what is the calculation to calculate euclidean distance for 3D data that has x,y and z value in Matlab? Thank you so much. Really appreciate if somebody can help me.
3 Comments
Lu Zhang
on 4 May 2022
Hi, Nurul. Did you figure it out finally? Is it possible for you to share the answer? I want to compute the euclidean distance for fMRI data on the vertex level. Thank you so much.
Accepted Answer
Jan
on 2 May 2018
Edited: Jan
on 2 May 2018
I guess, that you want the distance of a set of points to a specific other point:
% 100 points in 3D:
Pos = rand(100, 3);
% Euclidean distance to point [1,2,3]:
D = sqrt(sum((Pos - [1,2,3]).^2, 2))
With modern Matlab versions:
D = vecnorm(Pos - [1,2,3], 2, 2)
With old Matlab versions before the auto-expanding (< R2016):
V = bsxfun(@minus, Pos, [1,2,3]);
D = sqrt(sum(V.^2, 2))
8 Comments
More Answers (1)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!