MATLAB Answers

How to plot animation plots?

134 views (last 30 days)
Ajay Ganti
Ajay Ganti on 16 Apr 2018
Edited: Vishnu Keyen on 31 Aug 2021 at 6:19
I have an array of size 2396160x1. It contains 2396160 values. Now i want to plot these values like an animation, in which the values will be plotted. I'm attaching a video link like that i want to do. https://www.youtube.com/watch?v=x_jvC89MMs8&feature=youtu.be&t=15m43s. please help me

Answers (2)

Wick
Wick on 2 May 2018
If you're just looking to animate what the plot is doing like in the video, just include a 'drawnow' command inside a for loop.
If you want to create a movie from within MATLAB you can use the getframe and movie commands to capture the figure graphics to an animation.
You can also create a frame-by-frame animation by saving a series of PNG files and converting them to a movie with an external player (such as Quicktime) or you can write an animated GIF directly using the imwrite command. With the 'append' option for imwrite you can add multiple GIFs with a defined delay between frames. For the type of growing bar graph like in the YouTube video, an animated GIF is going to be a lot smaller than any "normal" movie file.

Vishnu Keyen
Vishnu Keyen on 31 Aug 2021 at 6:15
Edited: Vishnu Keyen on 31 Aug 2021 at 6:19
g=sin([1:0.1:10*pi]);
for i = 1:length(g)
figure(1)
if i ~=length(g)
plot(1:i,g(1,1:i),'-b');
else
plot(1:i,g(1,1:i),'-b*')
end
if i>=50
axis([i-50 i+50 min(g(1,:)) max(g(1,:))])
else
axis([0 i+50 min(g(1,:)) max(g(1,:))])
end
%pause(0.1)
drawnow
end

Community Treasure Hunt

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

Start Hunting!