...看看MATLAB中comet3(x,y,z)动态的图怎样保存成gif格式或者小视频,谢...
发布网友
发布时间:2024-08-04 10:32
我来回答
共1个回答
热心网友
时间:2024-08-04 11:36
matlab里要生成动态图像关键有两个,一个是图像数据,要准备多幅同样大小的图像或者将图像数据变化的过程保存下来;其二是正确调用imwrite函数,最主要有两个属性,1是DelayTime,控制图像切换的间隔,2是LoopCount,用于设置图像默认的循环次数,默认是无穷次,即不断循环,若要手动设置此值,0代表循环一次,1代表循环两次,以此类推。
参考下面的这个例子做,对应把曲线修改。
x?=?0:0.01:1;
figure
filename?=?'testnew.gif';
for?n?=?1:0.5:5
????y?=?x.^n;
????plot(x,y)
????drawnow
????frame?=?getframe(gcf);
????im?=?frame2im(frame);
????[imind,cm]?=?rgb2ind(im,256);
????if?n?==?1;
????????imwrite(imind,cm,filename,'gif',?'Loopcount',inf);
????else
????????imwrite(imind,cm,filename,'gif','WriteMode','append');
????end
end