Создание и управление размерами графического окна
Для создания графического окна служит команда figure.
Будем рассматривать три графических объекта
gcf – текущее графическое окно;
gca – текущие оси;
gco – текущий графический объект;
Для работы с этими объектами в существуют две функции: get и set. Функция get предназначена для получения значений свойств, а функция set предназначена для установки новых значений.
Простейший вид функции set
set (указатель на объект, ’свойство’, ’значение’).
Для получения свойств объекта необходимо ввести
get (указатель на объект, ’свойство’).
Создадим графическое окно с указателем имени и установим требуемые размеры этого окна.
HFig = figure
Положение графического окна и его размеры определяется функцией Position
get(gcf,'Position')
По умолчанию,
ans =
232 246 560 420
в пикселях.
Изменим
left = 232;
bottom = 258;
width = 560;
height = 260;
set(gcf,'Position', [left bottom width height], 'Color', 'w');
Создадим окно без меню команд
set(gcf,'Position', [left bottom width height], 'Color', 'w','MenuBar','none');
Для создания графического окна во весь экран выполним команды
% Нахождение размеров экрана
SCRsize =get(0, 'ScreenSize')
left = SCRsize(1)
bottom=SCRsize(2);
width=SCRsize(3);
% высота окна начинается с учетом ширины заголовка экрана
height=SCRsize(4)-19;
set(gcf,'Position', [left bottom width height], 'Menu', 'none','Color', 'w')
Если окон несколько, то команда
figure(HFig)
делает окно текущим.
Пример.
clear all
HFig1 = figure;
HFig2 = figure;
left = 232;
bottom = 258;
width = 560;
height = 260;
set(HFig1,'Position', [left bottom width height], 'Color', 'w');
figure(HFig2)
% Нахождение размеров экрана
SCRsize =get(0, 'ScreenSize')
left = SCRsize(1)
bottom=SCRsize(2);
width=SCRsize(3);
% высота окна начинается с учетом ширины заголовка экрана
height=SCRsize(4)-19;
set(gcf,'Position', [left bottom width height], 'Menu', 'none','Color', 'w')
Очистка текущего окна осуществляется командой clf.
Свойства осей
Построим графики двух функций.
clear all
HFig = figure;
left = 232;
bottom = 258;
width = 560;
height = 260;
set(HFig,'Position', [left bottom width height], 'Color', 'w');
x = -2*pi:pi/24:2*pi;
f = cos(x);
g = sin(x);
gr1 = plot(x,f);
grid
hold on
gr2 = plot(x,g);
Изменяем свойства осей
%убираем прямоугольную сетку вокрух оси
set(gca, 'Box', 'off')
%определяеи название шрифта и размер шрифта
set(gca, 'FontName','Times New Roman Cyr','FontSize',10)
%определяем пределы изменения осей
set(gca,'YLim', [-1.5 1.5], 'XLim', [-2*pi 2*pi])
xlabel('Ось {\itx} ')
ylabel('Ось {\ity}')
title('Графики функций sin({\itx}) и cos({\ity})', 'FontName','Courier')
Можно осям давать имя, например
hAxes1 = axes
set(hAxes1,..)
Очистка текущих осей осуществляется командой cla.
Свойства графика
set(gr1,'Color', 'b', 'LineWidth', 2, 'LineStyle', '--');
set(gr2,'Color', 'r', 'LineWidth', 2, 'LineStyle', '-.');
Добавим точки пересечения графиков:
X = [-7*pi/4 -3*pi/4 pi/4 5*pi/4]
Y = [sin(-7*pi/4) sin(-3*pi/4) sin(pi/4) sin(5*pi/4)]
gr7 = line([X(2) X(4)], [Y(2) Y(4)])
set(gr7, 'Color', 'm','LineWidth',1);
gr3 = line(X(1),Y(1));
set(gr3,'Marker', 'v', 'MarkerFaceColor','m', 'MarkerEdgeColor', 'm', 'Markersize', 8)
gr4 = line(X(2),Y(2));
set(gr4,'Marker', 'o', 'MarkerFaceColor','w', 'MarkerEdgeColor', 'k', 'Markersize', 8)
gr5 = line(X(3),Y(3));
set(gr5,'Marker', 's', 'MarkerFaceColor','k', 'MarkerEdgeColor', 'k', 'Markersize', 8)
gr6 = line(X(4),Y(4));
set(gr6,'Marker', '^', 'MarkerFaceColor','g', 'MarkerEdgeColor', 'g', 'Markersize', 8)
gr7 = line([X(2) X(4)], [Y(2) Y(4)])
set(gr7, 'Color', 'm','LineWidth',1);