graph multiple fields in a struct
30 views (last 30 days)
Show older comments
I have a struct with multiple fields named data1, data2, data3 etc up to 9 I want to graph the first two colums of each field
I used this
position = variable.data1(:,2);
velocity = variable.data1(:,3);
%then i did
plot(position,velocity)
This worked fine but is there anyway to do this in a loop to make it faster? In the future I may have data up to 100s of different arrays
0 Comments
Accepted Answer
Kevin Phung
on 18 Feb 2019
Edited: Kevin Phung
on 18 Feb 2019
fld = fieldnames(variable); %list of all field names.. data1, data2,data3...
for i = 1:numel(fld) % for each field name
m = variable.(fld{i}); %this will be the data1,data2,data3 matrix
pos = m(:,2);%index matrix for position
vel = m(:,3); %velocity
plot(pos,vel); %plot results
hold on; % keep plot for next plot
end
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!