Making a MATLAB movie (AVI) including the axis

1 Ansicht (letzte 30 Tage)
mathworks2011
mathworks2011 am 9 Sep. 2011
I want to make a movie file (avi) which when played back on a non-matlab PC includes the axis, titles etc.
h=figure;
movegui(h, 'onscreen');
title('MyTits')
vidObj = VideoWriter(myPathVid);
vidObj.Quality = 100;
open(vidObj);
data = randn(20,1);
for t = 1: 100
data(t) = rand(1);
h = plot(data);
datetick;
movegui(h, 'onscreen');
hold all;
drawnow;
currFrame = getframe;
writeVideo(vidObj,currFrame);
end
close(vidObj);
This creates the video and save it do disk.
However it only includes what goes on inside the axis.
How do I get it to include the axis?/ legends etc etc
I have tried the following but it doesnt work.
movegui(h, 'onscreen');
rect = get(h,'Position');
rect(1:2) = [0 0];
data = randn(20,1);
for t = 1: 100
data(t) = rand(1);
h = plot(data);
datetick;
movegui(h, 'onscreen');
hold all;
drawnow;
writeVideo(vidObj,getframe(h,rect));
end
close(vidObj);

Akzeptierte Antwort

mathworks2011
mathworks2011 am 9 Sep. 2011
solved:
movegui(h, 'onscreen');
rect = get(h,'Position');
rect(1:2) = [0 0];
data = randn(20,1);
for t = 1: 100
data(t) = rand(1);
h = plot(data);
movegui(h, 'onscreen');
hold all;
datetick;
drawnow;
writeVideo(vidObj,getframe(gcf,rect));
end
close(vidObj);

Weitere Antworten (0)

Kategorien

Mehr zu Just for fun finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by