How to plot values with different color with "if statement"

7 次查看(过去 30 天)
Hello,
I have a question. I have an .xlsx file with 3 columns. After that, I am making calculation between two first values. I would like to plot values x,y, depending on the value of the 3rd column (for example I would like to plot blue circle if 3rd column has 0 value and if 3rd column has 1 value I would like to plot red cirlce).
Could anyone help me?

回答(2 个)

J. Alex Lee
J. Alex Lee 2020-6-7
look at the documentation for the "scatter()" command. can you do what you want with that?
  2 个评论
Ivan Mich
Ivan Mich 2020-6-7
编辑:Ivan Mich 2020-6-7
Excuse me , but I don;t understand you. Could you be more specific?
I want my x-y plot colors to depend on the value of the third column.
For example , for value 1 of the third column the color of the x y plot to be red.
for value 2 of the third column the color of the x y plot to be blue.
for value 0 of the third column the color of the x y plot to be green.
That's what I mean
J. Alex Lee
J. Alex Lee 2020-6-8
did you read the documentation for scatter()?
If you don't have stats toolbox for Ameer's answer, you can achieve the same thing with scatter()
x = [0.5 0.2 0;
0.2 0.3 1;
0.6 0.2 0;
0.9 0.6 0;
0.2 0.4 0;
0.4 0.8 1;
0.7 0.9 1;
0.1 0.2 0];
colors = [1 0 0; % red for 0s
0 0 1]; % blue for 1s
scatter(x(:,1), x(:,2),[],x(:,3))
colormap(colors)

请先登录,再进行评论。


Ameer Hamza
Ameer Hamza 2020-6-8
x = [0.5 0.2 0;
0.2 0.3 1;
0.6 0.2 0;
0.9 0.6 0;
0.2 0.4 0;
0.4 0.8 1;
0.7 0.9 1;
0.1 0.2 0];
colors = [1 0 0; % red for 0s
0 0 1]; % blue for 1s
gscatter(x(:,1), x(:,2), x(:,3), colors)

类别

Help CenterFile Exchange 中查找有关 Annotations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by