|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
直接上代码:
$ a+ b) |; w- W7 {要达到画图动态的效果,就是当你画第i个点时,前(i-1)个点的画图过程要首先展现出来。只要记录画每一个点图像,然后依次快速移动这些图片,就可以达到这种目的了。在Matlab中提供了getframe和movie 来完成这个过程。具体详尽说明和其他使用见help。下面直接上代码。1 |* I! a$ B6 V& I
9 H2 r/ [0 q& V3 X- u
( U- S! H d. L$ ~3 ?+ D- {, {: O( ^8 m1 o3 u4 W1 c
clc;
5 C8 n$ L$ f. H/ @8 `- \close all;
& s4 Q& ^/ E6 cx1=0;s=0.2;%确定起始点和增量
$ `4 }6 Q- L: v6 _2 _- Enframes=50;%确定总动画帧数 R( W5 B& o) h; }' E! d! Z
for k=1:nframes$ n# W0 u- r4 n" J* q( c5 ~3 x
x1=x1+s;%确定画图时的横坐标终止值x1: s* [1 O$ B2 p W/ q# Y
x=0:0.01:x1;
/ F% e# h, j; O9 L8 h( ~% ^8 u y=sin(x);" t6 ]+ Y8 |/ k, a. o7 N
plot(x,y);( g4 e- f9 f# ?" M+ k7 P) E# P
axis([0 2*pi -1.2 1.2]);%坐标轴的范围( _! b2 i$ h$ L1 g2 g0 g. v- r* ]
m(k)=getframe;%将当前图形存入矩阵m中1 m! S$ F5 G T4 M* a
end' t! W7 F. n% L0 @
movie(m,3)%重复3此播放动画& e* |" r; `+ v( ]4 }
N- A; A/ B6 R; S
|
|