plot a certain x,y values from a large matrix

4 vues (au cours des 30 derniers jours)
smo
smo le 13 Août 2015
hi,
i have a 4000rows(with x value from 1:4000) and 2 column (of y values) matrix. How can i plot x&y with, say, taking x value from x > 500 and x<2500 and their corresponding y values?
thank you very much.

Réponses (2)

Lessmann
Lessmann le 13 Août 2015
You can use the colon operator to select a subset of your vector, like
plot(x(500:2500),y(500:2500))
  1 commentaire
smo
smo le 13 Août 2015
Modifié(e) : smo le 13 Août 2015
Hi, thanks for that. I didn't make myself clear enough, I actually meant i don't know the index of x. (which means x are a set of numbers not in orders).
But I have did a small test myself and found the answer: first index x-values and then use the x and y value only for that index. I am putting my answer here incase it can help someone else.
for example:
x = [1:10];
y = [11:20];
idx = find (x>3 & x <7);
x_new = x(idx);
y_new = y(idx);
plot (x_new, y_new, '-o')

Connectez-vous pour commenter.


Star Strider
Star Strider le 13 Août 2015
This works:
x = randi(4000, 1, 100); % Create Data
y = randi(99, 2, 100);
xp = x(x>500 & x<2500);
yp = y(:,(x>500 & x<2500));
figure(1)
plot(xp, yp, 'bp')
grid

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by