Accessing structure by its name and looping through it

1 次查看(过去 30 天)
Hi,
I'm wondering how I can access a structure by its upper level name from a cell array, and loop through it. For example:
Tests = {'Cold Run'
'Warm Run'
'Hot Run'};
for I = 1:length(Tests)
plot(Tests{I}.Time,Tests{I}.Speed);
hold on;
end
Tests{I} is wrong. If it was part of a larger structure, say "Something", then this would work:
Something.(Tests{I}).Time
But what is the proper syntax to do this without an upper structure?
  5 个评论
Eric Christensen
Eric Christensen 2019-9-18
Ah yes, I overcomplicated it by creating that cell array just to have the names to loop through. That seems to work, thanks.

请先登录,再进行评论。

采纳的回答

Matt J
Matt J 2019-9-19
Why not organize the data as a struct array?
Tests(1).Time = data1;
Tests(1).Speed = data2;
Tests(2).Time = data3;
Tests(2).Speed = data4;
Tests(3).Time = data5;
Tests(3).Speed = data6;
The indexing of the different scalar structures Tests(j) is now immediate.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by