How to count the number of scatter points of each color

3 次查看(过去 30 天)
I have make a code that do the scatter points in a graph, but i need to find the number of scatter points of each color? i have attached the sample code and graph for explaintion
for h=num_fixed_nodes+1:1:num_nodes
%Generate random nodes within the region
S1(h).xd = position_region(i,1) + rand(1,1)*region_width;
S1(h).yd = position_region(i,2) + rand(1,1)*region_height;
S1(h).G=0;
S1(h).id=h;
S1(h).type='N';
S1(h).temp = interp2(aa1,bb1,temp_values_1,S1(h).xd,S1(h).yd);
S1(h).E=Eo*rand(1,1);
Et=Et+S1(h).E;
S1(h).node_status = S1(h).temp<thresh_temp;
if(S1(h).node_status==1)
scatter(S1(h).xd,S1(h).yd, 'filled','MarkerFaceColor','g');
else
scatter(S1(h).xd,S1(h).yd, 'filled','MarkerFaceColor','r');
end
end

采纳的回答

Voss
Voss 2024-6-8
idx = [S1(num_fixed_nodes+1:num_nodes).node_status]==1;
n_green = nnz(idx);
n_red = nnz(~idx);

更多回答(1 个)

Steven Lord
Steven Lord 2024-6-10
Rather than creating one scatter plot for each individual point, I'd use that loop to create a vector of data that indicates in which color each point should be plotted then call scatter once after the loop is complete, passing that vector in as the c input argument. In that case you could use the groupcounts function to count how many elements of each color are in c.

类别

Help CenterFile Exchange 中查找有关 Discrete Data Plots 的更多信息

标签

产品


版本

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by