Plotting a field from a struct inside a struct

4 vues (au cours des 30 derniers jours)
DP
DP le 5 Août 2020
Commenté : DP le 6 Août 2020
Hey everyone,
I have this 1x543 struct called BB, inside BB is one field called 'blobs' that contains 543 unqiue structs of various sizes (some empty!). Inside each of these 543 struct is one common field called 'Area', I want to plot Area per total number of fields (543).
I created a few pieces of code to extract data, but I keep ending up plotting the Area values vs the number of areas inside its own struct.
Any ideas? Thank you!

Réponse acceptée

Sudheer Bhimireddy
Sudheer Bhimireddy le 6 Août 2020
Try this:
nBlobs = numel(BB);
h = figure;
clf;
hold on;
for i = 1:nBlobs
x = i;
temp = BB(i).blob;
temp_size = numel(temp);
if temp_size == 0
% This is if you have 0x1 in a BB(i).blob
% If you dont want to plot 0, simply remove below line
plot(x,0,'ko');
else
for j = 1:temp_size
y=temp(j).Area
plot(x,y,'ko');
end
end
end
Hope this helps.
  1 commentaire
DP
DP le 6 Août 2020
Ah, this makes a lot of sense. Thank you!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Structures dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by