plot by skipping some points

172 vues (au cours des 30 derniers jours)
Babu Sankhi
Babu Sankhi le 1 Fév 2021
Commenté : Babu Sankhi le 3 Fév 2021
Hi all,
I want to plot by skipping some points (4,31), (8, 71) and so on in my data . Is there any straight forward way of doing it?
Thank you
x=[1:1:20];
y=[1:10:200];
%x=c(:,1)
plot (x,y,'o');
%ismembertol(
  2 commentaires
Adam Danz
Adam Danz le 1 Fév 2021
Modifié(e) : Adam Danz le 1 Fév 2021
It's unclear whether (4,41) and (8,81) in your example are indices or coordinates.
Neither of your vectors have 81 elements so they can't be indicies and the max value in "A" is 20 so that wouldn't work with coordinates as large as 40. So the example doesn't help either.
Babu Sankhi
Babu Sankhi le 2 Fév 2021
I am sorry about that I just want to plot by skipping some coordinates.

Connectez-vous pour commenter.

Réponse acceptée

Adam Danz
Adam Danz le 1 Fév 2021
Modifié(e) : Adam Danz le 2 Fév 2021
Several methods to plot a subset of values within an array.
  1. Indexing. If you want to eliminate a list of (x,y) values, use functions like ismember, ismembertol, or == to create an index of matches, idx. Then use ~idx to select all other values when plotting plot(x(~idx), y(~idx)).
  2. Nan-replacement. After finding the values you want to ignore using indexing, replace those values with NaN. x(idx)=NaN; y(idx)=NaN; plot(x,y)
  3. Remove unwanted values. After finding the values you want to ignore using indexing, remove them using x(idx)=[]; y(idx)=[]; plot(x,y)
  4. To plot every n'th value: plot(x(1:n:end), y(1:n:end));
  5. To remove every n'th value: x(1:n:end)=[]; y(1:n:end)=[]; plot(x,y)
  6. To plot the n'th, m'th, and p'th values: idx=[n,m,p]; plot(x(idx),y(idx));
  7. To eliminate the n'th, m'th, and p'th values: idx=[n,m,p]; x(idx)=[]; y(idx)=[]; plot(x,y)
If you need additional help implementing any of those ideas, show us what you've tried where you're stuck.
  3 commentaires
Adam Danz
Adam Danz le 2 Fév 2021
Modifié(e) : Adam Danz le 3 Fév 2021
> But ismember just gives the logical array which reapeats
Yes, that logical array can be used to select which values are plotted as shown in the first point in my answer. I don't know what you mean by "which repeats"
> in my case there is no repetition of y coordiantes on x!! so confused
I don't know what this means and it's still not clear to me how you'd like to select which values are plotted.
> I just want to plot by skipping some coordinate
Which coordinates? That's still to vague to suggest something specific. I've added methods 4,5,6,7 to my answer in case that's what you're looking for.
Babu Sankhi
Babu Sankhi le 3 Fév 2021
Thanks for your elaborative ideas.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur 2-D and 3-D Plots dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by