MATLAB的简单动画制作
这里介绍两种类型的动画实现,一种使用getframe和movie命令实现帧动画,另一种使用comet(comet3)命令实现画图过程的动画.
①getframe和movie命令实现帧动画
例如,创建一个动画,实现y=ln x,y=x,y=exp(x)的图像变化的动画.
代码如下
x =linspace(0,1,20);
box on;%控制坐标系在一个框内
hold on;%保持图像不消失
y1 =log(x);plot(x,y1);M(1) = getframe;
y2 =x;plot(x,y2);M(2) = getframe;
y3 =exp(x);plot(x,y3);M(3) = getframe;
%上面三行代码解释一行即可,plot画图,getframe将作图的结
%果(而不是过程)记录在矩阵M中
movie(M,10);%将矩阵M中的帧播放出来,10表示播放10次
②comet(comet3)命令实现画图过程的动画
例如,创建一个动画,实现y=sin(x)从0到2*pi之间的变化过程.
代码如下
x =linspace(0,2*pi,100);
y = sin(x);
comet(x,y);
box on;
grid on;
类似地,采用comet3可以展示三维作图过程.
例如,创建一个动画,实现x=sin(t),y=cos(t),z=t在t从0到2*pi之间的变化过程.
t =linspace(0,2*pi,100);
x = sin(t);
y = cos(t);
z = t;
comet3(x,y,z);
box on;