How to count the number of scatter points of each color

2 ビュー (過去 30 日間)
muhammad farttoos
muhammad farttoos 2024 年 6 月 8 日
回答済み: Steven Lord 2024 年 6 月 10 日
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);
  2 件のコメント
muhammad farttoos
muhammad farttoos 2024 年 6 月 10 日
Thank you for your answer it solved my prolem
Voss
Voss 2024 年 6 月 10 日
You're welcome! Any questions, let me know. Otherwise, please "Accept" this answer. Thanks!

サインインしてコメントする。

その他の回答 (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 Center および File ExchangeDiscrete Data Plots についてさらに検索

タグ

製品


リリース

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by