|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
直接上代码:
% x# _" o# Y/ [4 W* ^ y2 \ @ k要达到画图动态的效果,就是当你画第i个点时,前(i-1)个点的画图过程要首先展现出来。只要记录画每一个点图像,然后依次快速移动这些图片,就可以达到这种目的了。在Matlab中提供了getframe和movie 来完成这个过程。具体详尽说明和其他使用见help。下面直接上代码。% c3 o5 ]1 t& m' s
3 `& h2 B& f( `: \! D& I
9 h \6 z' v& ^# Q
0 J; [/ Z1 o! Jclc;
. O5 Z1 T+ ?$ b& rclose all;9 n& O$ ^6 {) ]' i1 \# ?. {
x1=0;s=0.2;%确定起始点和增量* _0 W4 [! a% b3 J/ g# ^
nframes=50;%确定总动画帧数
$ t$ P' u! X" U* A ifor k=1:nframes+ t0 k- ^8 d) r% S6 g4 D
x1=x1+s;%确定画图时的横坐标终止值x1
, H6 Y" K4 U1 W, i x=0:0.01:x1;
; T5 i# r3 z. s( ?7 p0 \; {2 E" U y=sin(x);
$ q6 Z5 t4 ]0 i, F' p% x* I# b plot(x,y);, I* t9 z% ` D# W& A- U* s
axis([0 2*pi -1.2 1.2]);%坐标轴的范围
) x. z2 y7 {; \" D& Y m(k)=getframe;%将当前图形存入矩阵m中+ `& @' M4 W: J$ {- d! {5 F
end
2 j( F' C0 @0 V2 t% C. Hmovie(m,3)%重复3此播放动画
/ y, r; s/ o9 S7 H
2 y* s+ z$ c# g- @4 y |
|