我想使用Matlab2013(Linux 64位)创建一个360度旋转的表面图。我可以使用下面的代码片段创建一个动画gif,但是Matlab在动画的某些帧上调整了表面大小(例如请参见[1],第56-59帧)。您有什么办法可以防止Matlab调整绘图表面的大小吗?感谢您提前的建议。
function createVideo( FigureHandler, filename )
grid on
set(gca,'ZTickLabel',[]);
set(gca,'YTickLabel',[]);
set(gca,'XTickLabel',[]);
for n = 1:360
view(n,66)
zoom off
drawnow
frame = getframe(FigureHandler);
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','DelayTime',0);
end
end
end
view
是 Matlab 自带的功能(它是 graph3d 工具箱的一部分)。 - RTL