情节在GUI中保持

时间:2017-08-11 11:09:32

标签: matlab user-interface plot

我是matlab的新手,需要一些gui的帮助。我有两个轴箱(axes2和axes3),我在其中使用复选标记绘制。第一个复选框创建两个图:轴2中的一个(x1,y1)和轴3中的第二个(x1,ht)。第二个复选框还创建两个图:轴2中的一个(x2,y2)和轴3中的第二个(x2,ht2)。我想保留这些数字,所以如果我选择两个复选标记,则axis2和axes3将包含两个图。但是,只有axes2工作。在轴3中,仅显示连接到最后选定的chechmark的图。

请帮忙。代码如下:

function checkbox1_Callback(hObject, eventdata, handles)
 if get(handles.checkbox1,'Value')
 hold on;
 handles.hCbox1Plot = plot(x1,y1,'LineWidth',2,'Color', [0 0 0],'parent',handles.axes2);
 hold on;
 handles.hCbox2Plot = plot(x1,ht,'LineWidth',2,'Color', [0 0 0],'parent',handles.axes3);
 guidata(hObject,handles);  % do this to save the updated handles structure
 else
  if ~isempty(handles.hCbox1Plot);
     ~isempty(handles.hCbox2Plot);
      delete(handles.hCbox1Plot);
      delete(handles.hCbox2Plot);
  end
 end

function checkbox2_Callback(hObject, eventdata, handles)
 if get(handles.checkbox2,'Value')
 hold on;
 handles.hCbox3Plot = plot(x2,y2,'LineWidth',2,'Color', [1 0 0],'parent',handles.axes2);
 hold on;
 handles.hCbox4Plot = plot(x2,ht2,'LineWidth',2,'Color', [1 0 0],'parent',handles.axes3);
 guidata(hObject,handles);  % do this to save the updated handles structure
 else
  if ~isempty(handles.hCbox3Plot);
     ~isempty(handles.hCbox4Plot);
      delete(handles.hCbox3Plot);
      delete(handles.hCbox4Plot);
  end
 end

1 个答案:

答案 0 :(得分:0)

我修复了:

hold(handles.axes2,'on')