Plot struct-data in loop

Hi, i have struct data: data_1, data_2.....data_100 iwant to make the following plot in a loop:
for k=1:100
plot(data_k.a,data_k.b)
end
how could i do this in matlab?

6 个评论

You mean you have 100 individually named structs or you have 1 struct with those 100 fields? If the latter than your plot instruction obviously needs to include the name of the struct itself. If the former why on earth would you do that rather than just create an array of 100 structs?!
I solve it in this manner as you mentioned:
for k=1:100
L=struct2cell(load(['data_' num2str(k) '.mat']))
aa(:,k)=L{1}.a;
bb(:,k)=L{1}.b;
end
thank you
Thanks Stephen! Yes it is requirde and it does work for my case. I have diffrent struct with diffrent names. So i tried to collect the interessting data in an Array.
Stephen23
Stephen23 2017-7-20
编辑:Stephen23 2017-7-20
Aha... so someone put meta-data into structure names, and now this makes the saved data harder to process. Not very surprising. This is why meta-data does not belong in variable names:
Thank You

请先登录,再进行评论。

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

提问:

2017-7-20

评论:

2017-8-1

Community Treasure Hunt

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

Start Hunting!

Translated by