|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
直接上代码:
* k0 H- e1 E: H0 b要达到画图动态的效果,就是当你画第i个点时,前(i-1)个点的画图过程要首先展现出来。只要记录画每一个点图像,然后依次快速移动这些图片,就可以达到这种目的了。在Matlab中提供了getframe和movie 来完成这个过程。具体详尽说明和其他使用见help。下面直接上代码。
2 A) o) K0 t4 C# A" t+ Z0 {0 h, V, I2 f1 h
+ J+ X" i4 r- @& X& o4 M
: j9 s) J2 ^8 s
clc;
" @0 {9 ^; {( e7 g" Hclose all;( H: F! Q! r i" l1 e3 K4 F
x1=0;s=0.2;%确定起始点和增量5 O. M) L: q4 J& V
nframes=50;%确定总动画帧数4 c* g" W: ^9 n" ?/ p) a
for k=1:nframes
3 j$ W6 N* m& [- o5 {8 M8 J x1=x1+s;%确定画图时的横坐标终止值x18 h9 B9 m5 Z+ M$ Q
x=0:0.01:x1;
, Q( T+ I' O: x. M8 N/ D y=sin(x);
! w- @3 C- b. i; R1 s7 j plot(x,y);
$ X8 |" L) h6 L- v; B: Q2 I axis([0 2*pi -1.2 1.2]);%坐标轴的范围. O0 {2 j w9 U. k
m(k)=getframe;%将当前图形存入矩阵m中
l% w8 N! v T0 f* D- }/ U+ T. fend; c8 `; ^7 G4 T2 \2 n
movie(m,3)%重复3此播放动画
9 r" q8 Z) P, u7 ?
+ t9 F# o( H/ {: W M! ~/ V |
|