这是一个实验的数据处理程序,运用GUI来做的,在一个按钮的回调函数中有以下函数,运行结果是数可以算出来,但图形画不出来,请教各位大侠!!
程序如下:
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%输入反应温度
edit1 = str2num(get(handles.edit1,'String'));
edit2 = str2num(get(handles.edit2,'String'));
edit3 = str2num(get(handles.edit3,'String'));
edit4 = str2num(get(handles.edit4,'String'));
edit5 = str2num(get(handles.edit5,'String'));
edit6 = str2num(get(handles.edit6,'String'));
edit7 = str2num(get(handles.edit7,'String'));
edit8 = str2num(get(handles.edit8,'String'));
%输入测量的压差
edit9 = str2num(get(handles.edit9,'String'));
edit10 = str2num(get(handles.edit10,'String'));
edit11 = str2num(get(handles.edit11,'String'));
edit12 = str2num(get(handles.edit12,'String'));
edit13 = str2num(get(handles.edit13,'String'));
edit14 = str2num(get(handles.edit14,'String'));
edit15 = str2num(get(handles.edit15,'String'));
edit16 = str2num(get(handles.edit16,'String'));
edit17 = str2num(get(handles.edit17,'String'));
edit18 = str2num(get(handles.edit18,'String'));
edit19 = str2num(get(handles.edit19,'String'));
edit20 = str2num(get(handles.edit20,'String'));
edit21 = str2num(get(handles.edit21,'String'));
edit22 = str2num(get(handles.edit22,'String'));
edit23 = str2num(get(handles.edit23,'String'));
edit24 = str2num(get(handles.edit24,'String'));
%输入大气压
h = str2num(get(handles.edit46,'string'));
edit25=num2str(1/edit1);
edit26=num2str(1/edit2);
edit27=num2str(1/edit3);
edit28=num2str(1/edit4);
edit29=num2str(1/edit5);
edit30=num2str(1/edit6);
edit31=num2str(1/edit7);
edit32=num2str(1/edit8);
edit33=num2str(log10((h/760)*101325+(edit9+edit17)*500));
edit34=num2str(log10((h/760)*101325+(edit10+edit18)*500));
edit35=num2str(log10((h/760)*101325+(edit11+edit19)*500));
edit36=num2str(log10((h/760)*101325+(edit12+edit20)*500));
edit37=num2str(log10((h/760)*101325+(edit13+edit21)*500));
edit38=num2str(log10((h/760)*101325+(edit14+edit22)*500));
edit39=num2str(log10((h/760)*101325+(edit15+edit23)*500));
edit40=num2str(log10((h/760)*101325+(edit16+edit24)*500));
set(handles.edit25,'str',edit25);
set(handles.edit26,'str',edit26);
set(handles.edit27,'str',edit27);
set(handles.edit28,'str',edit28);
set(handles.edit29,'str',edit29);
set(handles.edit30,'str',edit30);
set(handles.edit31,'str',edit31);
set(handles.edit32,'str',edit32);
set(handles.edit33,'str',edit33);
set(handles.edit34,'str',edit34);
set(handles.edit35,'str',edit35);
set(handles.edit36,'str',edit36);
set(handles.edit37,'str',edit37);
set(handles.edit38,'str',edit38);
set(handles.edit39,'str',edit39);
set(handles.edit40,'str',edit40);
%作图
global f k
m1=str2num(get(handles.eidt25,'str'));
m2=str2num(get(handles.eidt26,'str'));
m3=str2num(get(handles.eidt27,'str'));
m4=str2num(get(handles.eidt28,'str'));
m5=str2num(get(handles.eidt29,'str'));
m6=str2num(get(handles.eidt30,'str'));
m7=str2num(get(handles.eidt31,'str'));
m8=str2num(get(handles.eidt32,'str'));
n1=str2num(get(handles.eidt33,'str'));
n2=str2num(get(handles.eidt34,'str'));
n3=str2num(get(handles.eidt35,'str'));
n4=str2num(get(handles.eidt36,'str'));
n5=str2num(get(handles.eidt37,'str'));
n6=str2num(get(handles.eidt38,'str'));
n7=str2num(get(handles.eidt39,'str'));
n8=str2num(get(handles.eidt40,'str'));
axes(handles.axes1);
f=[m1 m2 m3 m4 m5 m6 m7 m8];
k=[n1 n2 n3 n4 n5 n6 n7 n8];
p=polyfit(f,k,1);
x=0.00295:0.000001:0.0034;
y=polyval(p,x);
plot(x,y,'r-',f,k,'b*');
set(handles.axes1,'XminorTick','on');
xlabel('1/T');
ylabel('lgp');
grid on;
[本帖最后由 mooni 于 2009-5-22 11:26 编辑]