How to only plot data points within a certain range?

19 vues (au cours des 30 derniers jours)
Brian Hsiao
Brian Hsiao le 4 Mai 2018
Commenté : Star Strider le 4 Mai 2018
Let's say I have data points from 1 to 10000 (logarithmic) for both x and y, but only want to plot the points for x>10 and y<10 on a scatter plot. How would I do that?
What if I were to only exclude that region from the graph? How would I go about doing that?
Moreover, how can I count the number of data points only within that region using MatLab?

Réponses (1)

Star Strider
Star Strider le 4 Mai 2018
One approach:
x = randi(50, 1, 50); % Create Data
y = randi(50, 1, 50); % Create Data
figure(1)
scatter(x, y, 'p')
grid
axis([0 50 0 50])
title('Original Data')
m = (x > 10) & (y < 10); % Select Data (Logical Vector)
figure(2)
scatter(x(m), y(m), 'p')
grid
axis([0 50 0 50])
title('Selected Data')
  2 commentaires
Brian Hsiao
Brian Hsiao le 4 Mai 2018
Thank you! How do I count the number of points within that range?
Star Strider
Star Strider le 4 Mai 2018
My pleasure!
One additional line will give you that information:
m = (x > 10) & (y < 10); % Select Data (Logical Vector)
NrInRange = nnz(m); % Number Of Points Meeting Criteria
another option:
NrInRange = sum(m); % Number Of Points Meeting Criteria

Connectez-vous pour commenter.

Catégories

En savoir plus sur Scatter Plots dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by