% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
S=sprintf('%g',1);
set(handles.edit2,'String',S);
S=sprintf('%g',1);
set(handles.edit3,'String',S);
end
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
S=sprintf('%g',1);
set(handles.edit2,'String',S);
S=sprintf('%g',2);
set(handles.edit3,'String',S);
end
% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
S=sprintf('%g',1);
set(handles.edit2,'String',S);
S=sprintf('%g',3);
set(handles.edit3,'String',S);
end
Опишем, что происходит после нажатия на кнопку ввода нового элемента в серии экспериментальных данных. Это кнопка pushbutton4.
% Executes on button press in pushbutton4. INPUT NEW DATA
function pushbutton4_Callback(hObject, eventdata, handles)
Number=str2double(get(handles.edit2,'String'));
NumberString=str2double(get(handles.edit3,'String'));
if NumberString==1
Matrix=str2num(get(handles.edit4,'String'));
Matrix(Number)=str2double(get(handles.edit1,'String'));
S=mat2str(Matrix);
set(handles.edit4,'String',S);
end
if NumberString==2
Matrix=str2num(get(handles.edit5,'String'));
Matrix(Number)=str2double(get(handles.edit1,'String'));
S=mat2str(Matrix);
set(handles.edit5,'String',S);
end
if NumberString==3
Matrix=str2num(get(handles.edit6,'String'));
Matrix(Number)=str2double(get(handles.edit1,'String'));
S=mat2str(Matrix);
set(handles.edit6,'String',S);
end
S=sprintf('%g',Number+1);
set(handles.edit2,'String',S);
S=sprintf('%s',' ');
set(handles.edit1,'String',S);
end
|
|
Сначала считываются из соответствующих окошек интерфейса номер элемента и номер серии данных, затем, в зависимости от их значений, выбирается соответствующий набор данных в строке в окне интерфейса, считывается функцией str2num преобразующей строку символов в вектор чисел.
После этого считывается новый вводимый элемент данных из соответствующего ему окна интерфейса и добавляется к вектору данных. Потом вектор числовых значений преобразуется функцией mat2str в строку символов. Затем эта строка помещается в соответствующее ей окно интерфейса.
Опишем, что происходит после нажатия на кнопку построения графика. Это кнопка pushbutton5.
% --- Executes on button press in pushbutton5.GRAPHIC
function pushbutton5_Callback(hObject, eventdata, handles)
x1=str2num(get(handles.edit4,'String'));
x2=str2num(get(handles.edit5,'String'));
y=str2num(get(handles.edit6,'String'));
plot(x1,y,'k-',x2,y,'ro');
title('Fazovoe ravnovesie P.ZH.R. aceton-metanol (1 atm)');
xlabel('Molnie doli acetona v zhidkosti (-) i pare (o)');
ylabel('T, C');
grid on;
end
Считываются строки данных из соответствующих окон интерфейса, преобразуются функцией str2num в векторы чисел. После этого строится функцией plot график. Выводятся подписи к нему и функцией grid on накладывается сетка.
Пример 4. Ввести экспериментальные данные и построить графики к ним. Создадим (Рис.1.70) интерфейс, аналогичный предыдущему заданию.