I cannot make 'getframe' to 'moive2avi'

I have a code shown below
fig = figure('Color',[1 1 1]);
t = 140;
for degree = 1:10:360
clf
plot3(C{:},'marker','.','MarkerSize',16,'linestyle', 'none')
view(degree, 30+15*sin(degree/60));
drawnow
mov(degree) = getframe;
t = t+1;
end
Then it can show animation rotating my 3D graph. However, I cannot use movie2avi to export my animation to movie and save to folder.
movie2avi(mov, 'mymovie.avi', 'compression', 'None');
Please help. Thank you very much.
PS: I use MATLAB R2012a

Answers (1)

Image Analyst
Image Analyst on 27 Feb 2015
What's C? What's the purpose of t? Did you know there is a sind() function that takes arguments in degrees instead of radians?
See my attached demo where I do this same thing (having graphs be movie frames, but it works).

3 Comments

C is my cell data that I plot in the graph.
I will try from your link.
Thank you very much.
I use writerVideo but i get an error
Error using VideoWriter/writeVideo (line 326) Frame must be 237 by 327
Anyway that I can change the frame size?
Do you have VideoWriter? I'm not sure when it was introduced. And you forgot to attach your m-file so you've given me nothing to try, except my own demo which I know works.

This question is closed.

Asked:

OoM
on 27 Feb 2015

Closed:

on 20 Aug 2021

Community Treasure Hunt

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

Start Hunting!