luludebishe1 发表于 2009-1-7 22:38

求助关于 edit输入函数axes输出图形的问题

刚开始学习GUI,想做一个界面:一个edit输入函数,点击一个button用于axes显示函数图形.我是这样写代码的:
function edit1_Callback(hObject, eventdata, handles)
guidata(hObject,handles);

function pushbutton1_Callback(hObject, eventdata, handles)
e1=get(handles.edit1,'String');
axes(handles.axes1);
if e1~='0'
    y=e1;
    x=0:0.1:10;
    plot(handles.axes1,x,y);
else
    msgbox('请输入信号函数','提示','warn');
end
但是当edit为空时有提示对话框出现可是输入函数比如(sinx)axes却没有图形输出.
错误显示为:
??? Error using ==> plot
Error in color/linetype argument.
Error in ==> <a href="error:C:\MATLAB7\work\untitled2.m,113,1">untitled2>pushbutton1_Callback at 113</a>
    plot(handles.axes1,x,y);
Error in ==> <a href="error:C:\MATLAB7\toolbox\matlab\uitools\gui_mainfcn.m,75,1">gui_mainfcn at 75</a>
      feval(varargin{:});
Error in ==> <a href="error:C:\MATLAB7\work\untitled2.m,44,1">untitled2 at 44</a>
    gui_mainfcn(gui_State, varargin{:});
??? Error while evaluating uicontrol Callback.
之后将e1=get(handles.edit1,'String')改为e1=str2num(get(handles.edit1,'String'));
提示对话框不出现,axes上也没有图形输出.
请问是不书对edit的取值出错了,应该怎么解决呢?
页: [1]
查看完整版本: 求助关于 edit输入函数axes输出图形的问题