"Bogdan Dzyubak" <illan7@gmail.com> wrote in message <jfs0ui$s62$1@newscl01ah.mathworks.com>...
> Thanks, Z. Simple and elegant.
Hi,
great idea but didn't work for my data. Found a work-around using pdist2
dist = pdist2(data,data);
N = size(data,1);
result = NaN(1,N);
% first point is first row in data matrix
result(1) = 1;
for ii=2:N
dist(:,result(ii-1)) = Inf;
[~, closest_idx] = min(dist(result(ii-1),:));
result(ii) = closest_idx;
end
data=data(result,:);
"data" should be a nx2 vector containing x,y values.
> Thanks, Z. Simple and elegant.
Hi,
great idea but didn't work for my data. Found a work-around using pdist2
dist = pdist2(data,data);
N = size(data,1);
result = NaN(1,N);
% first point is first row in data matrix
result(1) = 1;
for ii=2:N
dist(:,result(ii-1)) = Inf;
[~, closest_idx] = min(dist(result(ii-1),:));
result(ii) = closest_idx;
end
data=data(result,:);
"data" should be a nx2 vector containing x,y values.