A moving point plot in MATLAB figure with animation.

180 views (last 30 days)
My program calculates position of a point on Z plane as (X,Y). I need to plot (X,Y) in Z-plane with a moving point showing location of point over the time in a single MATLAB figure. Please help.

Accepted Answer

Iman Ansari
Iman Ansari on 24 Jul 2013
n = 50;
XY = 10 * rand(2,n) - 5;
for i=1:n
plot(XY(1,i),XY(2,i),'or','MarkerSize',5,'MarkerFaceColor','r')
axis([-5 5 -5 5])
pause(.1)
end
  2 Comments
Usama Faisal
Usama Faisal on 20 Dec 2020
i=1;
for n=1:length(y) % use for loop to animate the line
if y(n)>sur(n)
plot(x(n),y(n),'o','MarkerFaceColor','b')
i=i+1;
grid on
drawnow
else
end
end

Sign in to comment.

More Answers (3)

Image Analyst
Image Analyst on 24 Jul 2013
Use the comet() function. It does exactly that.
  4 Comments
reema shrestha
reema shrestha on 7 Oct 2017
Edited: reema shrestha on 7 Oct 2017
I exactly want to do the same thing in projectile motion simulation. Instead of using comet to trace the path as well,I want to create a ball and make it follow the trajectory without drawing the trajectory,just the ball moving. Can you suggest me any?
Image Analyst
Image Analyst on 7 Oct 2017
You can perhaps just use plot() with a big dot marker over and over:
for k = 1 : whatever
x = ......
y = ......
plot(x, y, 'r.', 'MarkerSize', 30);
end

Sign in to comment.


Mohamadreza Khashei
Mohamadreza Khashei on 3 Nov 2021
for k = 1 : whatever x = ...... y = ...... plot(x, y, 'r.', 'MarkerSize', 30); end

Muhammad Hadyan Utoro
Muhammad Hadyan Utoro on 29 Sep 2022
Moved: Image Analyst on 29 Sep 2022
x = [0:0.01:2*pi];
for i = 1:length(x)
y = sin(x);
figure(1)
plot(x,y,'-o','MarkerIndices',1+i)
hold off
pause(0.005)
end

Categories

Find more on Animation 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!