[Animation]: To animate a figure as function of several variables

조회 수: 5 (최근 30일)
Shobhit
Shobhit 2013년 11월 21일
편집: Shobhit 2013년 11월 21일
Hi, I have a function(my_figure) that creates a figure by taking an array of variables(q) as argument and plotting according to the values of those variables.
my_figure(q)
I wish to animate a collection of such figures by varying the array of variables in a loop. I have come across 'refresh data' but cannot figure out how that is supposed to help me. Please help.

답변 (1개)

Grzegorz Knor
Grzegorz Knor 2013년 11월 21일
See getframe and movie functions in the MATLAB documentation.There is a following example:
Z = peaks;
figure('Renderer','zbuffer');
surf(Z);
axis tight;
set(gca,'NextPlot','replaceChildren');
for j = 1:20
surf(sin(2*pi*j/20)*Z,Z)
F(j) = getframe;
end
movie(F,20) % Play the movie twenty times
  댓글 수: 1
Shobhit
Shobhit 2013년 11월 21일
편집: Shobhit 2013년 11월 21일
Thanks for your reply. It helps. But I seem to be getting an error that:
Error using hgMovie
Movie contains uninitialized frames
Error in movie (line 41)
builtin('hgMovie',varargin{:});
I can see that All the frames have been alloted a value. I cannot understand the reason for this error.
I have given a part of my code for reference.
figure;
a_plot_m(q_eq);
axis tight;
set(gca,'NextPlot','replaceChildren');
for j =1:10
qm=q2(:,j);
car_plot_m(q_eq)
F(j) = getframe(gcf);
end
movie(F,10) % Play the movie

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Animation에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by