利用plot命令重复刷新显示动画效果。。。本想在axes控件中显示,可是只有第一次plot命令在控件中显示,接下来的都是另开一个画图窗口显示图片。。怎样让图片都在axes控件中显示呢?求高手指点。
附上代码:
handles.timer = timer('Period',5,'ExecutionMode','FixedRate',...
'TimerFcn',{@PlotUpdate,handles}); %dingshiqi chufa
guidata(hObject,handles);
start(handles.timer);%timer函数调用PlotUpdate函数
function PlotUpdate(hObject,events,handles)
global index;
global a;
if(index==1)
distance=handles.distance%传递参数
time=index;%%%%%%%%%%%%
T=exp(-0.5*10^(-4))*time;
alpha=(1\distance)*log(T);
a(1,index)=alpha;
a(2,index)=index;%%%%%%%产生画图用的数组
axes(handles.axes2);%%%这个函数不太了解,网上看了一通,是产生handles.axes2句柄的意思吗,用了也没%%%%%%%%%%%%%%%%%%效果
axis tight;
stem(a(2,:),a(1,:),'fill','--');
title('simulation');
xlabel('time');
ylabel('alpha');
hold on;
index=index+1;
else
if index<=60 %%%%第一次调用可以再axes中显示,index=1这个可以显示,倒是第二次调用就重新开一个显示%%%%%%%%%%%%%怎么回事呢%%%%%%%%%%%%%
distance=handles.distance;
time=index;
T=exp(-0.5*10^(-4))*time;
alpha=(1\distance)*log(T);
a(1,index)=alpha;
a(2,index)=index;
axes(handles.axes2);
axis tight;
stem(a(2,:),a(1,:),'fill','--');
title('simulation');
xlabel('time');
ylabel('alpha');
hold on;
index=index+1
else
index=1;
stop(handles.timer);
end
end
[本帖最后由 hongjl1118 于 2009-7-15 15:35 编辑]