用MATLAB生成动态视频(附代码)

之前做过一个MATLAB生成视频的视频教程

因为不断有人私信代码,于是索性贴在这里了,也便于大家复制。
out = VideoWriter('lagrange_1.avi');
out.FrameRate = 20;%一秒播放几帧
open(out);%打开视频文件
for p=1:1000%自己的参数
polar(p);%自己的画图函数
xlabel x;ylabel y;zlabel z
F=getframe(gcf);%获取当前帧
writeVideo(out, F);%将当前帧写入视频文件
end
close(out);%关闭视频文件
%附带polar的代码,这就是画这个视频的代码

画别的就换成自己的函数就行了。
不过我这里的参数p只是用于调整视角,做一个旋转看图的效果而已。
function [] =polar(p)
a=1;
phi = [-4:0.1:4];r = [0:0.02:a];
[R,T] = meshgrid(r,phi);
z_0 = R.*exp(1i*T);
z_1 = 1+1i;
z=z_1+z_0;
Z_plot=real(z).^2+imag(z).^2;
%cplxmap(z,Z_plot);
meshz(real(z),imag(z),Z_plot);colorbar;
hold on;
view([0.2*p,40]);
a_f=2.5;
phi_f=[-4:0.1:4];
r_f=[0:0.02:a_f];
[R_f,T_f]=meshgrid(r_f,phi_f);
z_f=R_f.*exp(1i*T_f);
Z_plot_f=real(z_f).^2+imag(z_f).^2;
mesh(real(z_f),imag(z_f),Z_plot_f);
colorbar;