2D plot and animation

61 views (last 30 days)
Abhibrata Adhikary
Abhibrata Adhikary on 17 Jun 2018
Answered: Hussein on 8 Jul 2023
figure();
plot(x(:,1),x(:,3),'b',x(:,5),x(:,7),'r',x(:,9),x(:,11),'g')
axis([0 15 0 15])
I want to make a animation to plot the graph as shown. i.e it should start with initial point and slowly goes giving me an animation. The normal graph is coming but I want it in the form of animation. Can someone please help me in this?

Answers (3)

Walter Roberson
Walter Roberson on 17 Jun 2018
I recommend using animatedLine()
But you could also consider comet()
  13 Comments
Noah Prisament
Noah Prisament on 7 Jun 2023
Edited: Noah Prisament on 7 Jun 2023
The "animatedline" now supports "datetime" values natively, so this functionality can now be acheived using "animatedline" and "addpoints" if the AnimatedLines are initialized as follows:
L1 = animatedline(NaT, NaN, 'color', 'b');
L2 = animatedline(NaT, NaN, 'color', 'r');
L3 = animatedline(NaT, NaN, 'color', 'g');

Sign in to comment.


Abhibrata Adhikary
Abhibrata Adhikary on 17 Jun 2018
Can you give an example to show the working?

Hussein
Hussein on 8 Jul 2023
clc clear all close all Z = peaks; surf(Z) axis tight set(gca,'nextplot','replacechildren','visible','off') f = getframe; [im,map] = rgb2ind(f.cdata,256,'nodither'); im(1,1,1,20) = 0; for k = 1:20 surf(cos(2*pi*k/20)*Z,Z) f = getframe; im(:,:,1,k) = rgb2ind(f.cdata,map,'nodither'); end imwrite(im,map,'DancingPeaks.gif','DelayTime',0.1,'LoopCount',inf) %g443800

Categories

Find more on Animation in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!