masking data plots for graph
Show older comments
I want my plot to include my mask:
mask=true(size(x));
mask(0>x)=false;
mask=true(size(y));
mask(0>y)=false;
plot(x(mask),y(mask),'.')
It is not a problem, when I only have to mask the x values or y values seperately, only when I have to plot both masks.
Could the problem be that my mask for x and y respectively aren't having a particular definition? I tried with 'xmask' and 'ymask' and add this to the plotting sequence, but it does not work either.
Answers (2)
Walter Roberson
on 18 Nov 2017
xt = x;
xt(xt<0) = nan;
yt = y;
yt(yt<0) = nan;
plot(xt, yt);
3 Comments
cvbnm
on 18 Nov 2017
Edited: Walter Roberson
on 18 Nov 2017
Walter Roberson
on 18 Nov 2017
mask = (x > 0) & (y > 0);
[b,stats]=robustfit(x(mask),y(mask));
However, this is only going to work if x and y are vectors. If they are 2D then the result of x(mask) and y(mask) is going to be a column vector, because 2D arrays cannot have "holes" in them.
cvbnm
on 18 Nov 2017
cvbnm
on 18 Nov 2017
Edited: Walter Roberson
on 18 Nov 2017
Categories
Find more on Author Block Masks 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!