How to gradually plot two simultaneous graphs in MATLAB gui?

4 views (last 30 days)
Hello Everyone,
I am trying to plot two graphs in MATLAB gui simultaneously. Both of these should be plotted at the same time. I have tried looping them in in a single loop but it plots them in the same axes, whereas having two loops makes them plot one after other.
Here's my code:
a = 0:0.01:1;
x = sin(2*pi*3*a);
y = cos(2*pi*a);
figure(1)
for i = 1:length(a)
plot(a(1:i),x(1:i))
pause(0.05)
end
figure(2)
for i = 1:length(a)
plot(a(1:i),y(1:i))
pause(0.05)
end
Can anyone help me figure out a way to plot them both simultaneously?

Accepted Answer

Walter Roberson
Walter Roberson on 13 Jun 2021
a = 0:0.01:1;
x = sin(2*pi*3*a);
y = cos(2*pi*a);
fig1 = figure(1);
ax1 = axes(fig1);
fig2 = figure(2);
ax2 = axes(fig2);
for i = 1:length(a)
plot(ax1, a(1:i),x(1:i))
plot(ax2, a(1:i),y(1:i))
pause(0.05)
end
But like I wrote before, I recommend that you read about animatedline()
  3 Comments
Walter Roberson
Walter Roberson on 13 Jun 2021
a = 0:0.01:1;
x = sin(2*pi*3*a);
y = cos(2*pi*a);
for i = 1:length(a)
plot(handles.axes1, a(1:i),x(1:i))
plot(handles.axes2, a(1:i),y(1:i))
pause(0.05)
end

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products


Release

R2016b

Community Treasure Hunt

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

Start Hunting!