matlab动画保存成gif,matlab制作gif动画

第一种方式close all;clear all;clc;clf;xlabel(X轴);ylabel

第一种方式

close all;

clear all;

clc;

clf;

xlabel('X轴');

ylabel('Y轴');

box on;

axis([-2,2,-2,2]);

axis equal;

pause(1);

h=line(NaN,NaN,'marker','o','linesty','-','erasemode','none');

t=6*pi*(0:0.02:1);

for n=1:length(t)

set(h,'xdata',2*cos(t(1:n)),'ydata',sin(t(1:n)));

pause(0.05);

frame=getframe(gcf);

imind=frame2im(frame);

[imind,cm] = rgb2ind(imind,256);

if n==1

imwrite(imind,cm,'test.gif','gif', 'Loopcount',inf,'DelayTime',1e-4);

else

imwrite(imind,cm,'test.gif','gif','WriteMode','append','DelayTime',1e-4);

end

end

效果图

二、第二种方法是先将每一个动画中的图片保存下来到一个文件夹中,然后进行读取并且制作出视频文件。

程序示例:

function Avi() %%大小写非常重要%% n = 64; WriterObj = VideoWriter('wmw');

WriterObj.FrameRate = 100;%此语句必须放置在

%WriterObj = VideoWriter('wmw')语句之后才能设置帧率

open(WriterObj);for i=1:n%逐次取出文件frame=imread(['C:\Users\Administrator\Desktop\图片\',num2str(i),'.jpg']); %读取文件writeVideo(WriterObj,frame);end close(WriterObj);

原图片文件在百度网盘:

链接:http://pan.baidu.com/s/1miFgCsg 密码:vauv

下载之后保存在桌面上,程序就可以直接运行

总结;

Matlab除了强大的矩阵运算,仿真分析外,绘图功能也是相当的强大,静态画图没什么问题,由于Matlab本身的多线程编程缺陷,想要动态的画图,并且能够很好的在GUI中得到控制,还不是一件很容易的事情,

一. AXIS 移动坐标系
这种方法是最简单的一种方法,适合于数据已经全部生成的场合,先画图,然后移动坐标轴。

二. Hold On 模式

此种方法比较原始,适合于即时数据,原理是先画上一帧,接着保留原始图像,追加下一帧图像,此种方式比较繁琐,涉及画图细节,并且没有完整并连续的Line对象数据。

详细内容可以 后台私信“资料”MF送相关视频资料。内容包括:C/C++,Linux,Nginx,golang,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,ffmpeg流媒体,CDN,P2P,K8S,Docker,Golang,TCP/IP,协程,嵌入式,ARM,DPDK等等。。。

更多C4D模型下载,请访问C4D模型网

优质模型尽在,https://www.c4dmodels.cn/

动态分享

动态图表制作教程,什么叫动态图表

2022-9-13 2:11:00

动态分享

excel图表动起来,动态图表怎么做

2022-9-13 2:13:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索