MATLAB 动图绘制、保存
动图有gif格式和视频的avi格式。
1、sin(x)动图
clear all
h = animatedline;%动画线
axis([0 4*pi -1 1])
box on
x = linspace(0,4*pi,200); for k = 1:length(x)
y = sin(x(k));
addpoints(h,x(k),y);%将数据添加到动画线中
drawnow%画出动画线
f=getframe(gcf);
imind=frame2im(f);
[imind,cm] = rgb2ind(imind,256);
if k == 1;
imwrite(imind,cm,'test.gif','GIF', 'Loopcount',inf,'DelayTime',1);
else
imwrite(imind,cm,'test.gif','GIF','WriteMode','append','DelayTime',1);
end
end

2、
close all; clear all;
%创建avi文件对象
aviobj = VideoWriter('test.avi','Uncompressed AVI');
open(aviobj)
%动画部分代码
t = linspace(0,2.5*pi,40);
fact = 10*sin(t);
fig=figure;
[x,y,z] = peaks;
for k=1:length(fact)
h = surf(x,y,fact(k)*z);
axis([-3 3 -3 3 -80 80])
axis off
caxis([-90 90])
%获取当前画面
F = getframe(fig);
%加入avi对象中
writeVideo(aviobj,F); %转成gif图片,只能用256色
im = frame2im(F);
[I,map] = rgb2ind(im,256);
%写入 GIF89a 格式文件
if k == 1;
imwrite(I,map,'test.gif','GIF', 'Loopcount',inf,'DelayTime',0.1);
else
imwrite(I,map,'test.gif','GIF','WriteMode','append','DelayTime',0.1);
end
end
close(fig);
%关闭avi对象
close(aviobj);

3、
clear all
close all mov=VideoWriter('mult_1.avi');
open(mov);
N=50;
om=0.1;
X = linspace(0,12.4,N);
Y = 0*X;
Z2= 0*X;
for it=1:100 Z = cos(X-it*om);
Y2= cos(X-it*om); stem3(X,Y,Z,'r','fill')
hold on
stem3(X,Y2,Z2,'k','fill')
hold on;
line(X,Y,Z2); for ix=1:N
hold on;
plot([X(ix) X(ix)],[0 Y2(ix)],'k');
end; hold off
view(-25,30); xlim([X(1) X(end)]);
ylim([-1 1])
zlim([-1 1]) set(gcf,'Color',[1 1 1],'nextplot','replacechildren', 'Visible','off')
axis off FF=getframe(gcf);
% With "VideoWriter" use "writevideo" to add frames to the video
writeVideo(mov,FF);
im = frame2im(FF);
[I,map] = rgb2ind(im,256);
%写入 GIF89a 格式文件
if it == 1;
imwrite(I,map,'test.gif','GIF', 'Loopcount',inf,'DelayTime',0.1);
else
imwrite(I,map,'test.gif','GIF','WriteMode','append','DelayTime',0.1);
end
end;
% Close the video file
close(mov);

MATLAB 动图绘制、保存的更多相关文章
- MATLAB中绘制质点轨迹动图并保存成GIF
工作需要在MATLAB中绘制质点轨迹并保存成GIF以便展示. 绘制质点轨迹动图可用comet和comet3命令,使用例子如下: t = 0:.01:2*pi;x = cos(2*t).*(cos(t) ...
- python学习之matplotlib绘制动图(FuncAnimation()参数)
1.函数FuncAnimation(fig,func,frames,init_func,interval,blit)是绘制动图的主要函数,其参数如下: a.fig 绘制动图的画布名称 b.func自定 ...
- Matlab从一系列图片导出AVI视频,导出GIF动图
平台:Win7,Matlab 2014a 从一系列图片导出AVI视频的M代码如下: clear all; % 清除变量 % 官方示例,命令窗口输入“doc VideoWriter” writerObj ...
- Matlab 语谱图(时频图)绘制与分析
Matlab 语谱图(时频图)绘制与分析 语谱图:先将语音信号作傅里叶变换,然后以横轴为时间,纵轴为频率,用颜色表示幅值即可绘制出语谱图.在一幅图中表示信号的频率.幅度随时间的变化,故也称" ...
- MATLAB实例:绘制折线图
MATLAB实例:绘制折线图 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 条形图的绘制见:MATLAB实例:绘制条形图 用MATLAB将几组不同的数 ...
- Matlab绘图基础——利用axes(坐标系图形对象)绘制重叠图像 及 一图多轴(一幅图绘制多个坐标轴)
描述 axes在当前窗口中创建一个包含默认属性坐标系 axes('PropertyName',propertyvalue,...)创建坐标系时,同时指定它的一些属性,没有指定的使用DefaultAxe ...
- MATLAB之心形图绘制
一.静态心形图绘制 (1)效果展示 (2)静态心形原始代码 clc; clear all; ; % 均布三位坐标 x=-:; y=-:; z=-:; [x,y,z]=meshgrid(x,y,z); ...
- gif动图快速制作方法(附工具)
现在写博客或是wiki的过程中,会经常引用到图片,特别是客户端经常与页面相关所以截图不可避.但是越来越多的效果仅仅一张图片是无法清楚的描述.并且博客或是wiki也是支持gif图的.gif图的制作方法有 ...
- matlab结构体形式保存数据生成.mat文件< 转>
2015年 参加天池大数据竞赛 为了建立模型,打算基于matlab使用Random Forest Algorithm的工具包 该工具包我在此分享给大家,http://yunpan.cn/cVX ...
随机推荐
- echarts优化数据视图dataView中的样式
在使用echart过程中,toolbox里有个dataView视图模式,里面的数据没有对整,影响展示效果,情形如下:改问题解决方案为,在optionTocontent回调函数中处理,具体代码如下: t ...
- 前端面试题(HTML、CSS部分)
HTML.CSS部分: 一.html5有哪些新特性.移除了那些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5? 新特性: HTML5 现在已经不是 SGML 的 ...
- 为什么要使用webpack?
在网页中会引用到哪些常见的静态资源? js (.js .jsx .coffee .ts) css (.css .less .sass .scss scss是sass的plus版) imag ...
- PHP5.6.23+Apache2.4.20+Eclipse for PHP 4.5开发环境配置
一.Apache配置(以httpd-2.4.20-x64-vc14.zip为例)(http://www.apachelounge.com/download/) 1.安装运行库vc11和vc14 2.解 ...
- JavaScript实现集合与字典
JavaScript实现集合与字典 一.集合结构 1.1.简介 集合比较常见的实现方式是哈希表,这里使用JavaScript的Object类进行封装. 集合通常是由一组无序的.不能重复的元素构成. 数 ...
- 【S2-053】Struts2远程命令执行漏洞(CVE-2017-12611)
继S2-052之后,Apache Struts 2再次被曝存在远程代码执行漏洞,漏洞编号S2-053,CVE编号CVE-2017-1000112. 当开发人员在Freemarker标签中使用错误的构造 ...
- nes 红白机模拟器 第4篇 linux 手柄驱动支持
小霸王学习机的真实手柄,实测CPU 占用 80% 接线图: 手柄读时序: joypad.c 驱动: 普通的字符设备驱动. #include <linux/module.h> #includ ...
- golang的sync.WaitGroup使用示例
下面一段代码 len(m) 不一定会打印为 10,为什么?.如果想要 len(m) 打印为 10,应该怎么修改代码? func main() { const N = 10 m := make(map[ ...
- libfastcommon总结(一)加载主机上所有网卡的IPv4的地址
头文件为local_ip_func.h 主要接口 load_local_host_ip_addrs();//加载主机网口所有IPv4地址到列表 print_local_host_ip_addrs ...
- 记 2020蓝桥杯校内预选赛(JAVA组) 赛后总结
目录 引言 结果填空 1. 签到题 2. 概念题 3. 签到题 4. 签到题 程序题 5. 递增三元组[遍历] 6. 小明的hello[循环] 7. 数位递增[数位dp] 8. 小明家的草地[bfs] ...