How to plot points with corresponding colour

1 次查看(过去 30 天)
Given I have an excel data where a1 is the first row of data, a2 is the second row of data and b is the corresponding label. B has either blue or red. When I plot it plots it all as a scatter plot but in blue. I want to make the points red when b says red for that label. How do i do this??

采纳的回答

Dyuman Joshi
Dyuman Joshi 2024-4-23
(Assuming there are only red and blue colors for the plot) Use logical indexing -
%Check which elements of B are red
idx = strcmp(B, 'red');
f = figure;
hold on
%plot data with red color
scatter(a1(idx), a2(idx), [], 'r')
%plot data with blue color
scatter(a2(~idx), a2(~idx), [], 'b')
hold off
  1 个评论
Hannah
Hannah 2024-4-26
I tried that and it is not really working properly. I do not know if its my file that is the problem.
After uploading my excel dataset, this is how my codes look like
Dataset.Y(strcmp(Dataset.Y, 'red')) = {'-1'}
Dataset.Y(strcmp(Dataset.Y, 'blue')) = {'1'}
Dataset.Y = str2double(Dataset.Y)
data = table2array(Dataset)
%I think I am going wrong when plotting it or when turning the data into a
%matrix asthe number of rows do not match the height of the table

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by