unrecognized input argument moviegui MATLAB R2015b
4 views (last 30 days)
Show older comments
Hello, I tried this code:
h=figure;
movegui(h, 'onscreen');
rect = get(h,'Position');
rect(1:2) = [0 0];
vidObj = VideoWriter('H1,H2.avi');
vidObj.Quality = 100;
open(vidObj);
for it=1:Nt
t=it*dt;
H1(1) = 1;
figure(1)
h=plot(x,H1,'--',x, H2,':','lineWidth',2);
title({['H1 and H2 in the wake region'];['time(\itt) = ',num2str(dt*it)]})
xlabel('Spatial coordinate (x) \rightarrow')
ylabel('(H1), (H2) \rightarrow')
legend('H1', 'H2')
movegui(h, 'onscreen');
hold all;
if ~mod(t,0.1)
saveas(gcf, ['t=',num2str(t),'.png'])
end
for i=2:Nx
H1(i)=...
end
end
close(vidObj);
Why I cannot see any movie and I get the error message above?
1 Comment
Jan
on 28 Jan 2016
Post the complete error message, such that we do not have to guess which of the 2 movegui commands fails.
Accepted Answer
Jan
on 28 Jan 2016
Edited: Jan
on 28 Jan 2016
movegui(h, pos) requires the first input to be the handle of a figure. But inside the loop h is the handle of the line object created by plot().
Because the figure does not change its size inside the loop, you can omit the movegui command there.
Some improvements:
hFig = figure; % a better name than simply "h"
...
figure(hFig); % Not hardcoded [1]
...
movegui(hFig, 'onscreen'); % Or omit this line!
0 Comments
More Answers (0)
See Also
Categories
Find more on Get Started with MATLAB in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!