How to save animated plots

Hi
I have an animated plot, and I want to save it - possibly an animation, and I want to know how to do it?

 Accepted Answer

%% Make some data
t = 1:0.1:2*pi
y = sin(t)
%% Initialize video
myVideo = VideoWriter('myVideoFile'); %open video file
myVideo.FrameRate = 10; %can adjust this, 5 - 10 works well for me
open(myVideo)
%% Plot in a loop and grab frames
for i=1:1:length(t)
plot(t(1:i), y(1:i), 'LineWidth', 3)
ylim([-1, 1])
xlim([0, 2*pi])
pause(0.01) %Pause and grab frame
frame = getframe(gcf); %get frame
writeVideo(myVideo, frame);
end
close(myVideo)

5 Comments

Its, perfect. is there any way to improve the quality of the video.
Is there a way to control the speed at which the plot is being drawn? @Swackhamer
It would be great if you add that to the code.
You could try adding
pause(0.25) %pause 0.25 seconds
in the loop to slow it down. It could also work to play with the framerate parameter.
Hope that helps.
Clay
Hi everyone!
Can I ask you a favour as it may be similar to the previous one?
I am trying to copy/transfer a plot (figure) in psychtool box window.
Do you know how I can do that?
I have my plot:
AccuracyFinal=[accuracy1,accuracy2,accuracy3,accuracy4,accuracy5];
plot(AccuracyFinal,'b--','LineWidth',5);
title('The Test Trend')
xlabel('Exercise')
ylabel('Accuracy')
legend('Trend','Location','northeast')
xlim ([1 5])
xticks([1 2 3 4 5])
ylim ([0 100])
yticks([10 20 30 40 50 60 70 80 90 100])
This is how I transfered it to psychtool box window with this code:
set(gcf, 'Position', [0 0 250 250]);
saveas(gcf, 'img.jpg');
myImage=imread("img.jpg");
tex=Screen('MakeTexture',win, myImage);
Screen('DrawTexture', win,tex)
The problem is that the name of axes do not appear and neither the title or the legend!
Please let me knwo if you can help me out!!
Thank you!
I'm not sure why, but could you simply re-add the axes titles, title, and such once you replot it?

Sign in to comment.

More Answers (0)

Categories

Products

Tags

Community Treasure Hunt

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

Start Hunting!