Skip certain values in plot and connect adjacent points
16 views (last 30 days)
Show older comments
Hello,
I am trying to plot some data with a regular "plot" function, but I want to skip some certain values and connect the adjacent points of that skipped value. For example, I want to plot something like this:
x = 0:pi/10:2*pi;
y = sin(x);
plot(y)
and skip for examples values of x at points pi/2 or 3*pi/2, but connect the points around this skipped values. I tried:
x = 0:pi/10:2*pi;
y = sin(x);
plot(y(x~=pi/2))
but, it is not doing what I exactly want to do. I want the spacing of x values remain the same, except the skipped point, where the connected adjacent points obviously will have more separation than other pair of points. How can I do this kind of plot? Many thanks in advance.
0 Comments
Accepted Answer
Adam Danz
on 27 Aug 2019
How to skip x values.
x = 0:pi/10:2*pi;
skipPoints = [pi/2, 3*pi/2]; % list points to skip
x(ismember(x,skipPoints)) = []; % remove skip-points
% now compute Y with only the desired points
y = sin(x);
plot(x,y)
If you'd rather not connect the points adjacent to the skipped values, you can replace the skipped values with NaN
x = 0:pi/10:2*pi;
skipPoints = [pi/2, 3*pi/2]; % list points to skip
x(ismember(x,skipPoints)) = NaN; % Replace with nan
% now compute Y with only the desired points
y = sin(x);
plot(x,y)
2 Comments
More Answers (0)
See Also
Categories
Find more on Annotations 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!