matlab动画演示结果
记录运行图结果的动画演示,学习结果总结。
没有太多的复杂函数,用的是简单的plot绘制,然后一步步记录生成动画。
代码如下:
%绘制动画形式
clc,close all,clear all
% save the file from M_flie to avi
avi_obj=VideoWriter('yunxingtu.avi');
open(avi_obj);
h = animatedline; %创建初始动画线条对象。
set(gca,'yticklabel',[]);
set(gca,'xticklabel',[]);
Timetable=[
1207 1218 1223 1229
1211 1221 1228 1235
1225 1237 1242 1249
1228 1240 1245 1253
1242 1255 1260 1268
1246 1258 1264 1271
1261 1272 1279 1286
1265 1272 1282 1289];
[N_station,N_train]=size(Timetable);
Y=[36 36 24 24 12 12 0 0];
for i=2:N_station
for j=1:N_train
x_0=Timetable(:,j);
x=x_0(i-1:i);
y=Y(i-1:i);
grid minor;
axis([1200 1290 0 36]);
plot(x,y,'k','linewidth',3); %绘制每一页动画
yticks([0 12 24 36]);
yticklabels({'车站4','车站3','车站2','车站1'});
grid minor;
ax=gca;
ax.YGrid='on';
ax.XGrid='on';
hold on;
M = getframe;
pause(0.2); %调整动画快慢,每一页暂停时间
% the M is writed to avi_object by writeVideo function
writeVideo(avi_obj, M);
end
end
close(avi_obj)
动画保存
MATLAB上的动画保存下来画面质量不是太高,所以采用的PPT上的截屏。
在PPT上 “插入”——>”屏幕录制“,选定要截屏的区域,掌握好开始时间,这样就能截取所需要的动画了。
演示结果
这里就不展示动画,代码可直接使用。