Построить и сохранить график. Для того, чтобы построить график и сразу же сохранить его, предназначена кнопка Plot & Save.
В соответствующем этой кнопке тексте программы сначала происходит построение графика. Можно было бы просто поставить вызов функции, уже описанной выше, которая строит график. Но все же более понятно для изучения, если все переменные вычисляются здесь же. Для контроля строится и сам график.
Затем, когда все переменные, описывающие график, определены, то открываем файл.
Функция uiputfile возвращает путь к файлу и имя файла. Затем их объединяем в одну переменную. Записываем в файл количество элементов массивов горизонтальных и вертикальных координат (очевидно они одинакового размера). Затем записываем сами массивы координат точек графика. Потом записываем аргументы, а также номер функции и номер аргумента, для которых построен график. Затем файл закрываем.
% --- Executes on button press in pushbutton4. PLOT & SAVE
function pushbutton4_Callback(hObject, eventdata, handles)
%PLOT
[VectorArg]=VvodArg(hObject, eventdata, handles);
NumFun=str2double(get(handles.edit7,'String'));
NumArg=str2double(get(handles.edit11,'String'));
MinArg=str2double(get(handles.edit12,'String'));
StepArg=str2double(get(handles.edit13,'String'));
MaxArg=str2double(get(handles.edit14,'String'));
NumberSteps=round((MaxArg-MinArg)/StepArg);
horis(1)=MinArg;
VectorArg(NumArg)=horis(1);
[VectorRes]=ReshitZadachu(VectorArg);
vert(1)=VectorRes(NumFun);
for i=2:NumberSteps+1
horis(i)=horis(i-1)+StepArg;
VectorArg(NumArg)=horis(i);
[VectorRes]=ReshitZadachu(VectorArg);
vert(i)=VectorRes(NumFun);
end
plot(horis,vert,'o-');
set(gca,'XGrid','on');
set(gca,'Ygrid','on');
%OPEN FILE WT
[f,p]=uiputfile('C:\MATLAB701\work\exGuide_1Graf.txt','Окно выбора');
KudaZapisat=strcat(p,f);
f=fopen(KudaZapisat,'wt');
%gotovim dannije dlja avtomaticheskogo chitivanija
fprintf(f,'%d\t',NumberSteps);
for i=1:(NumberSteps+1)
fprintf(f,'%g\t',horis(i));
end
fprintf(f,'\n');
for i=1:(NumberSteps+1)
fprintf(f,'%g\t',vert(i));
end
%zapisivajem argumenti
for i=1:3
fprintf(f,'%g\t',VectorArg(i));
end
fprintf(f,'%g\t',NumFun);
fprintf(f,'%g\t',NumArg);
fclose(f);
Открыть результаты вычислений из файла. Для открытия файла с результатами вычислений предназначена кнопка Open Data. В соответствующем ей месте программы опишем необходимые действия. Откроется окно, показанное на рис.1.66.