How to plot multiple plots in one figure without overwriting
5 views (last 30 days)
Show older comments
Dear Matlab,
I have attached sample data with 2 groups - their mean averaged power spectrum signal).
GOAL: to plot all data in one figure without overwriting the data each time, in a for loop. (with one group plotted in red lines, one average signal for each - and the other group plotted in black ones, one average signal for each participant).
The data are power spectrum outputs from matlab's pwelch() function, for 2 patient groups EEG data. In the below for loop, It plots each signal in the same prescribed figure, but the problem is that it overwrites the figure, so in the end, I only have one signal plotted (the last signal in the looping index).
%% plot all in one fig
for ic = 1: length(rowmeans2c)
figure(4),clf
hold on
plot(hz{ic},10*log10(rowmeans2c{ic}),"Color",'r')
end
for id = 1: length(rowmeans2d)
figure(4),clf
hold on
plot(hz{id},10*log10(rowmeans2c{id}),"Color",'k')
end
hold off
figure(4),
title('test')
Please help. Thank you so much in advance, as always!
0 Comments
Accepted Answer
Image Analyst
on 5 Feb 2023
Edited: Image Analyst
on 5 Feb 2023
Get rid of the calls to figure() clf because it's clearing everything you've plotted prior to that.
More Answers (0)
See Also
Categories
Find more on Parametric Spectral Estimation 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!