如何刷新输入数据并在MATLAB GUI中更新绘图?

时间:2013-05-10 07:09:27

标签: matlab matlab-figure matlab-guide

我正在使用Matlab GUI。我的问题是当我更改输入数据时,图表没有更新。我的代码很长,但这是我正在使用的绘图功能:

axes(handles.Diagram1)
hold all
for i=1:6:numel(t)
    plot(rn,E(i,:)/1000000)  
end
set(axesHandle,'Diagram1','Diagram1');

轴图的标记是“Diagram1!

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

MATLAB图并非永久地链接到它们显示的数据,因此如果在绘图后更改数据,则图不会自动更新。通过重新执行plot命令更改数据后,您需要自己更新绘图。

答案 1 :(得分:0)

我自己从未使用过它,但您可能正在寻找drawnow函数 - 请参阅documentation here

答案 2 :(得分:0)

您可以创建一个“清洁图”按钮,1)清除当前轴(cla),2)删除图例,3)清除标题,并将任何计数器设置为1.图仍然存在,但是内容已经消失。或者您只需将代码包含在“if”:

function cleanbutton_Callback(source,eventdata)
 cla
 legend off
 title ''
 counter = 1;
end

这是你需要的吗?