Matlab 绘制箱线图的GUI设计
让我们假设我们有以下GUI 想法如下:用户输入变量的输入或数量,然后在循环中他将逐步输入变量的数量,例如,让我们假设变量的数量为5Matlab 绘制箱线图的GUI设计,matlab,matlab-guide,Matlab,Matlab Guide,让我们假设我们有以下GUI 想法如下:用户输入变量的输入或数量,然后在循环中他将逐步输入变量的数量,例如,让我们假设变量的数量为5 所以用户输入1,然后单击enter,单元格将为空,然后输入2,然后输入等等,结果将保存在预先分配的数组中,下面是代码 n=str2num(get(handles.observation_number,'String')); array=zeros(1,n); for ii=1:n array(ii)=str2num(get(handles.variable
所以用户输入1,然后单击enter,单元格将为空,然后输入2,然后输入等等,结果将保存在预先分配的数组中,下面是代码
n=str2num(get(handles.observation_number,'String'));
array=zeros(1,n);
for ii=1:n
array(ii)=str2num(get(handles.variables,'String'));
end
axes(handles.axes1);
boxplot(array);
但这个程序并没有给我这样做的可能性,我怎样才能修复它呢?提前感谢我将在您的位置使用inputdlg():
for ii=1:n
prompt = {'Enter a variable:'};
dlg_title = 'Input';
num_lines = 1;
answer = inputdlg(prompt,dlg_title,num_lines);
array(ii) = str2double(answer);
end
您必须创建一个回调函数,类似于:
enterVar=uicontrol('Style', 'edit','Callback',{@addVar});
其中,addVar是一个函数,它将当前值分配给“array”变量的最后一个空位置,并删除文本框的内容。如果有人单击了关闭标记,他或她应该解释原因