|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
直接上代码:
1 T% o& \, I& S5 B) y9 B1 t要达到画图动态的效果,就是当你画第i个点时,前(i-1)个点的画图过程要首先展现出来。只要记录画每一个点图像,然后依次快速移动这些图片,就可以达到这种目的了。在Matlab中提供了getframe和movie 来完成这个过程。具体详尽说明和其他使用见help。下面直接上代码。' a/ H4 R1 K5 p. [, g
. j6 x) K4 C0 b
- @9 n! l0 r1 @7 y$ @5 b$ ]( H1 ~
4 R- R& }9 z8 w
clc;
/ I7 d! W) l0 x+ G( V6 lclose all;
7 m0 O# s1 y9 f Z, Rx1=0;s=0.2;%确定起始点和增量; b- z( _' b4 ?' K! C. v/ ]
nframes=50;%确定总动画帧数
; J- ?6 ?- N0 ?. ?for k=1:nframes
1 I& l( H; ]5 w9 S ~/ ~ x1=x1+s;%确定画图时的横坐标终止值x1
( ]' ^$ z& J& W+ d/ Z' ] x=0:0.01:x1;1 `+ o( Q+ Y# G7 L7 l
y=sin(x);
# p2 [# A5 L& W# ^: q plot(x,y);
7 a4 V+ Z& n2 {* { axis([0 2*pi -1.2 1.2]);%坐标轴的范围
1 G, A0 M1 t" u' B( J& g' B3 x m(k)=getframe;%将当前图形存入矩阵m中
; w9 E6 N a; o" a/ f; Hend, d+ f* ?/ @8 R( z5 a6 _4 k
movie(m,3)%重复3此播放动画7 L- }+ v8 x) A* n; \) {
+ f: e! a m! A* k9 @8 Q( y4 l
|
|