Graph one set of data in two different colors

1 view (last 30 days)
I have a set of data in a matrix and I wanted to create a scatter plot where if the ratio of X/Y is <4 my points were one color and if the ratio is >=4 the points would appear as another color, all on one graph. I tried
if X/Y >4
plotmatrix(X,Y,'g')
hold on
else
plotmatrix(X,Y,'b')
end
hold off

Answers (1)

Mike Garrity
Mike Garrity on 17 Jul 2015
One approach is something like the following:
x = rand(1,500);
y = rand(1,500);
mask = x./y > 4;
scatter(x(mask),y(mask))
hold on
scatter(x(~mask),y(~mask))
legend('x/y > 4','x/y <= 4')
The mask variable is a logical vector which tells which of your data values fall into each of your two classes. Then you can use logical indexing to extract the elements of your data which belong to a particular class.

Community Treasure Hunt

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

Start Hunting!