Sequence of slice() images

How can I automatically save a sequence of slice() images? It doesn't seem to fall under the same approach that plot() images do

 采纳的回答

Walter Roberson
Walter Roberson 2016-1-24

0 个投票

It is exactly the same, getframe() / imwrite(), or print(), or saveas()

2 个评论

Hmm. It seems as if I do:
x=1:1:3;
[X,Y,Z]=meshgrid(x,x,x);
u=sin(X);
h=slice(X,Y,Z,u,1,1,1);
imwrite(h,'test.jpg');
it results in a blank frame result
slice() returns a graphics object, not an array of data. imwrite() is only for writing arrays of data. One possibility using imwrite() is
x=1:1:3;
[X,Y,Z]=meshgrid(x,x,x);
u=sin(X);
slice(X,Y,Z,u,1,1,1);
pause(0.01); %draws and gives time to render
h = getframe(gca);
imwrite(h,'test.jpg');

请先登录,再进行评论。

更多回答(1 个)

J W
J W 2016-1-24
编辑:J W 2016-1-24
Figured it out. Use a direct function handle.
h=figure;
slice(X,Y,Z,u,1,1,1);
saveas(h,'test.jpg');
I'll be accepting the previous answer because it was still correct.

类别

在 帮助中心 和 File Exchange 中查找有关 Convert Image Type 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by