matlab image popping during animation creation
本问题已经有最佳答案,请猛点这里访问。
我会尽力解释我的问题。我正在模拟网络的动态,我想获得一个动画,其中每一帧代表我的网络,每个节点相对于输入文件具有特定的颜色。
这是我的脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | for ii=1:Movie_size hfig=figure('visible','off'); hold on; %plot edges for kk=1:Nedge, plot(xedge(kk,:),yedge(kk,:),'black') end %color of the nodes for kk=1:nodes, val=(1-(Color_node(12798 ,kk)-umin)/(umax-umin)); ggCol(kk,:)=[1,val,1-val]; end %enhanced the contrast of the figure ggCol = imadjust(ggCol,[.2 .3 0; .6 .7 1],[]); %plot nodes for kk=1:nodes, plot(xpos(kk),ypos(kk),'o','MarkerFaceColor',ggCol(kk,:), ... 'MarkerEdgeColor','k','MarkerSize',10) end frames(ii)=getframe(hfig); hold off; end movie(frames); |
我成功地绘制了每一帧,但是当我想获得动画时,我显示了所有的数字,没有电影。我尝试了很多不同的东西,但它从来没有奏效...
PS:我一直在编辑标题,因为主题似乎已经被问过了...
虽然你已经调用了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
或者,您可以创建一个帧数组,然后在 MATLAB 中使用
以交互方式显示这些帧
1 2 3 4 5 6 | for k = 1:100 frames(k) = getframe(hfig); end % View as a movie movie(frames) |
更新
根据您更新的问题,必须弹出窗口,因为
1 | movie(frames) |