How to add tolerance to my code ?
Afficher commentaires plus anciens
I have this code to flipud every other line along x-axis. The code works (only) when the increment on x-axis is an integer number(1,2,3...or 4 etc) as in data (a) attached, result shown in the first figure for 2 increment . but when the increment on x-axis is a fraction(1.123 or 1.234, ...or etc) as in data (b) attached, it only work for the first line as shown in the second Figure for 1.123 increment.
I think the reason is that I need to add a tolerance to the result of desired_line so Matlab can find it and add it to the desired_line_matrix. because of precision issue.
_ But i don't know how to add the tolerance of search !!!!_
Thank you so much


%Find the desired lime:
desired_line_matrix=[];
TS=2;
s=a;
desired_line=[];
line_number=(max(s(:,1))-min(s(:,1)))/TS;
for j=0:TS:line_number*2
desired_line =s(1,1)+(j+min(s(:,1)));
desired_line_matrix=[desired_line_matrix,desired_line];
end
%Flip the desired lime:
for i=1:length(desired_line_matrix)
[r,c]=find(s(:,1)==desired_line_matrix(i));
d=r';
s(d,:)=flipud(a(d,:));
end
plot(s(:,1),s(:,2))
xlabel('X')
ylabel('Y')
hold on
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Matrix Indexing dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!