在App Designer中,如何在下拉菜单值之间切换时“保留”绘图?

时间:2019-05-01 04:03:09

标签: matlab

在app设计器中,我有多个下拉菜单,允许用户选择然后绘制的数据值。第一次单击“绘图”按钮时,从菜单中仅绘制一个选项,或从多个下拉菜单中绘制多个数据值都没有问题。但是,如果用户更改下拉菜单值,则除非再次单击“绘图”按钮,否则仅绘制其中一个值。

我尝试了多种解决方案,包括以各种方式使用hold或通过在'plot'按钮的初次运行期间清除轴(例如,通过使用cla)来实质上重置'plot'按钮功能。

示例代码:

SelectedMetric = app.OsteoDropDown.Value;  
[ColumnValue] = OsteometricFunc(SelectedMetric);  


PopSelectionA = app.PopulationA.Value;  
[RowValue] = PopulationAFunc(PopSelectionA);  


x = 1:length(RowValue);  
y = OsteoData(RowValue,ColumnValue);  
%hold(app.UIAxes);  
scatter(app.UIAxes,x,y,'g');  

PopSelectionB = app.PopulationB.Value;  
[RowValue] = PopulationAFunc(PopSelectionB);  

x = 1:length(RowValue);  
y = OsteoData(RowValue,ColumnValue);  
hold(app.UIAxes);
scatter(app.UIAxes,x,y,'r');  

第一个单击“绘图”按钮的实例可以正确执行所有操作: enter image description here

单击“绘图”按钮的第二个实例,其中仅更改了“人口II”的下拉菜单。 “人口I”的图不再可见,尽管它应该是:

enter image description here

再次单击“绘图”按钮可以正确绘制所有值,但是:

enter image description here

如何解决此问题,以便切换单个下拉菜单(或多个下拉菜单)自动绘制所有下拉菜单值的所有内容?

0 个答案:

没有答案