plot middle and end of an array

13 views (last 30 days)
cgenes
cgenes on 6 Jan 2017
Commented: cgenes on 7 Jan 2017
HI i want of plot the beginning and end of an array, leaving out the middle bit
something like . . . (here the comma doesn't work)
figure, plot(x(1:417,900:1000), y(1:417,900:1000))
is there an easy way to do this without splitting up the array?
thanks
Charlie

Accepted Answer

Adam
Adam on 6 Jan 2017
Edited: Adam on 6 Jan 2017
figure; plot(x([1:417,900:1000]), y([1:417,900:1000]))
You have to put your indices into an array, then you can use them as any other array of indices, irrespective of whether they are contiguous or not.
  2 Comments
Steven Lord
Steven Lord on 6 Jan 2017
In addition to what Adam said, if you want to leave a "gap" between elements 417 and 900, add a NaN value. As a simpler example:
% The NaN at the end of x allows us to put a NaN in the middle
% of the array to be plotted, x(ind), using indexing
x = [1:10 NaN];
y = x.^2;
ind = [1:5 11 7:10];
plot(x(ind), y(ind), 'o-')
Note that the points (5, 25) and (7, 49) are not connected. If instead you'd done something like:
ind2 = [1:5 7:10];
plot(x(ind2), y(ind2), 'o-')
those two points would be connected.
cgenes
cgenes on 7 Jan 2017
ok thanks for this I don't want the point to be connected so i will try this

Sign in to comment.

More Answers (0)

Categories

Find more on Line Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!