I have to plot all the signals in one figure

function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
load sampleEEGdata
time = -1:1/EEG.srate:1;
step=(2+30)/5;
for f=2:step:30
% create sine wave
sine_wave = cos(2*pi*f.*time);
% make a Gaussian
s=4/(2*pi*f);
gaussian_win = exp(-time.^2./(2*s^2));
figure
plot(time,sine_wave.*gaussian_win)
hold on
end
guidata(hObject, handles);

4 Comments

That is the above code. I am not able to plot all the signals in a same figure. I tried a lot.
What’s EEG.rate??
Your code is not readablereadable please use"code" in MATLAB Answers text editor
For plotting instead of writing figure define figure no and then plot e.g. figure(2)

Sign in to comment.

Answers (1)

if you want a new window for every for-loop try:
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
load sampleEEGdata
time = -1:1/EEG.srate:1;
step=(2+30)/5;
figure % create the figure window
hold on
for f=2:step:30
% create sine wave
sine_wave = cos(2*pi*f.*time);
% make a Gaussian
s=4/(2*pi*f);
gaussian_win = exp(-time.^2./(2*s^2));
plot(time,sine_wave.*gaussian_win)
end
guidata(hObject, handles);

Categories

Asked:

on 29 Sep 2018

Answered:

on 1 Oct 2018

Community Treasure Hunt

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

Start Hunting!