For-Loop for multiple plots or histograms

3 views (last 30 days)
Dear all,
I am fairly new to matlab programming and I constantly struggle with tiresome repetitive constructs in my code. For example, I'd like to plot multiple histograms in a tiledlayout construct and apply the same xlim/ylim to each of them (see code below). Can someone indicate how i might use a loop to tidy up my code a bit and iterate through the histograms? Inputs in my code are different time series of returns, that are stored as individual variables.
figure
tiledlayout (1,3)
nexttile
histogram(SPNL)
xlim([-0.1 0.1])
ylim([0 800])
nexttile
histogram(EXNL)
xlim([-0.1 0.1])
ylim([0 800])
nexttile
histogram(NKNL)
xlim([-0.1 0.1])
ylim([0 800])
Thank you very much in advance!
Leo

Accepted Answer

Adam Danz
Adam Danz on 25 Jan 2021
Edited: Adam Danz on 25 Jan 2021
Put the data into a cell array and then loop through the cell array.
figure
tlo = tiledlayout (1,3);
data = {SPNL, EXNL, NKNL};
for i = 1:numel(data)
ax = nexttile(tlo);
histogram(ax, data{i})
xlim(ax, [-0.1 0.1])
ylim(ax, [0 800])
end

More Answers (0)

Categories

Find more on Data Distribution Plots in Help Center and File Exchange

Tags

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!