Filtering out y values

4 views (last 30 days)
Fabian
Fabian on 19 Jun 2023
Commented: Fabian on 20 Jun 2023
Hello all, I'm having some trouble with filtering out some data from the graph attached. Basically, I want to have the graph where it is just the wave through the range of 8-13. Anything below 8 and over 13 I want hidden in the graph. Thank you.

Accepted Answer

VBBV
VBBV on 19 Jun 2023
Edited: VBBV on 19 Jun 2023
Here's what you can do to filter y values from a dataset , by applying a condition
x = 0:8e4;
y = 20*rand(length(x),1);
scatter(x(1:1e3:end),y(1:1e3:end),'ko')
idx = y > 8 & y < 13;
y = y(idx);
x = x(idx);
scatter(x(1:1e3:end),y(1:1e3:end),'ko')
ylim([0 20])
  1 Comment
Fabian
Fabian on 20 Jun 2023
Thank you so much this helped me solve my problem.

Sign in to comment.

More Answers (1)

Daniel
Daniel on 20 Jun 2023
If you're just looking for visual zoom, you can use the ylim command to set the y-limits on a graph. xlim works similarly for x-limits.
t = 0:0.01:10;
x = sin(2*pi*t) + randn(size(t)).^2+randn(size(t)).^2;
plot(t,x,'o')
title('Without ylim')
figure
plot(t,x,'o')
ylim([-1.5 5])
title('With ylim')

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!