Clear Filters
Clear Filters

Plot a structure array without a loop

6 views (last 30 days)
I ran a Monte-Carlo with 300 simulation runs and I stored the output data for each run in a structure as
DATA(i).x = outputX;
DATA(i).y = outputY;
.Now I want to plot the data in a figure for all iterations without iterating through a loop. For now, I'm using
figure(1);hold on;grid on;box on;
for i = 1:n
hold off;
Is it possible to plot all the data as
or do I have to use commands like struct2cell and then cell2mat for this?

Accepted Answer

Fawad Farooq Ashraf
Fawad Farooq Ashraf on 2 Aug 2022
I think I've found the answer to this myself.
figure(1);hold on;grid on;box on;
p = arrayfun(@(a) plot(a.x,a.y,'.-'),DATA);
This works quite well and also faster than plotting inside a for loop.

More Answers (0)


Find more on MATLAB in Help Center and File Exchange




Community Treasure Hunt

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

Start Hunting!