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

3 visualizaciones (últimos 30 días)
Shobhit
Shobhit el 21 de Nov. de 2013
Editada: Shobhit el 21 de Nov. de 2013
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.

Respuestas (1)

Grzegorz Knor
Grzegorz Knor el 21 de Nov. de 2013
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 comentario
Shobhit
Shobhit el 21 de Nov. de 2013
Editada: Shobhit el 21 de Nov. de 2013
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

Iniciar sesión para comentar.

Categorías

Más información sobre Animation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by