偶然间发现matlab很万能,平时用matlab做实验显得有点敷衍了,今天学习了一点做简单动图的东西,语法很简单,实际就是要有深厚的数学功底哇!
一、运动的余弦函数
打开了matlab,新建文件animation1.m, 开始第一个简单的练手工作,要想运动,就得先做一个余弦函数
先定义其X的定义域,再令Y=sin(X);即可有如下效果
X = -2*pi : 0.1 : 2*pi;
Y = sin(X);
plot(X,Y)
而我们要实现运动的效果,实际就是所有的点向右平移了,所有定义域就要发生改变,这里定义平移的尺度为0.1,对应的值也要发生相应改变,这里注意set的用法,它重新设定了新值,即把我们新的X,Y的值赋给h,而drawnow表示绘制这时候的图形
X = X + 0.1;
Y = sin(X);
set(h, 'XData', X, 'YData', Y);
drawnow;
这样我们就能得到一个平移了0.1的余弦图形了,怎么样才能一直平移呢,就是让他一直循环下去,利用while true即可实现
while true
X = X + 0.1;
Y = sin(X);
set(h, 'XData', X, 'YData', Y);
drawnow;
end
一个移动的图就得到了。
这里再提供一种更简单的方法。
while true
X = X + 0.1;
Y = sin(X);
plot(X,Y);
getframe;
end
这里的getframe可以实现set的功能。