Grid on matlab что это

Обновлено: 05.07.2024

3. Трёхмерная графика .

Графики функций двух переменных представляют из себя куски поверхностей, нависающие над областями определения функций. Отсюда ясно, что изображение графиков функций двух переменных требует реализации "трёхмерной графики" на пл оском экране дисплея компьютера.

Чаще всего точки аргументов расположены в области определения функции регулярно в виде прямоугольной сетки (то есть матрицы). Такая сетка точек порождает две матрицы одной и той же структуры: первая матрица содержит значения первых координат этих точек (x - координат), а вторая матрица содержит значения вторых координат (y - координат). Обозначим первую матрицу как X, а вторую - как Y. Есть ещё и третья матрица - матрица значений функции z=f(x,y)при этих аргументах. Эту матрицу обозначим буквой Z.

Простейшей функцией построения графика функции двух переменных в системе MATLAB является функция

plot3( X , Y , Z )

где X, Y и Z - матрицы одинаковых размеров, смысл которых мы только что объяснили.

В системе MATLAB имеется специальная функция для получения двумерных массивов X и Y по одномерным массивам x, y.


Пусть по оси x задан диапазон значений в виде вектора

u = -2 : 0.1 : 2

а по оси y этот диапазон есть

Для получения матриц X и Y, представляющих первые и вторые координаты получающейся прямоугольной сетки точек используют специальную функцию системы MATLAB:

[ X , Y ] = meshgrid( u, v )

Как мы видим, эта функция получает на входе два одномерных массива (вектора), представляющие массивы точек на осях координат, и возвращает сразу два искомых двумерных массива. На прямоугольной сетке точек вычисляем значения функции, например функции exp:

Z = exp( - X.^2 - Y.^2 )

Наконец, применяя описанную выше функцию plot3,получаем следующее изображение трёхмерного графика этой функции:


Из этого рисунка видно, что функция plot3 строит график в виде набора линий в пространстве, каждая из которых является сечением трёхмерной поверхности плоскостями, параллельными плоскости yOz. По-другому можно сказать, что каждая линия получается из отрезков прямых, соединяющих набор точек, координаты которых берутся из одинаковых столбцов матриц X, Y и Z. То есть, первая линия соответствует первым столбцам матриц X, Y Z; вторая линия - вторым столбцам этих матриц и так далее.

Для построения трёхмерных линий, задаваемых параметрически применяется другая форма вызова функции plot3:

plot3( x, y, z )

где x, y и z являются одномерными массивами координат точек, которые и нужно последовательно соединить отрезками прямых. Например, следующий фрагмент кода

t = 0 : pi/50 : 10*pi ;

x = sin( t );

y = cos( t );

plot3( x , y , t );

grid on

где применена известная по плоским графикам команда

grid on

для проставления сетки координатных значений в области построения графика (также допустимо использовать команды и функции по оформлению графиков, ранее рассмотренные для "плоского" случая), позволяет построить винтовую линию, изображение которой показано на следующем рисунке:


Помимо этой простейшей функции система MATLAB располагает ещё рядом функций, позволяющих добиваться большей реалистичности в изображении трёхмерных графиков. Это функции mesh, surf и surfl.

Функция mesh соединяет вычисленные соседние точки поверхности графика отрезками прямых и показывает в графическом окне системы MATLAB плоскую проекцию такого объёмного "каркасно-ребристого" ( по-английски зовётся wireframe mesh) тела. Вместо ранее показанного при помощи функции plot3 графика функции

exp( - X.^2 - Y.^2 )

можно получить вот такое изображение


Для лучшего восприятия "объёмности" изображения разные рёбра автоматически окрашиваются в разные цвета. Кроме того (в отличие от функции plot3) осуществляется удаление невидимых линий. Если вы считаете, что изображённое ребристое тело является прозрачным и не должно скрывать задних линий, то можно ввести команду hidden off , после чего такие линии появятся на изображении. Более плотного изображения поверхности можно добиться, если вместо


функции mesh применить функцию surf( X, Y, Z ).

В результате получается следующее изображение представляющее плотную (непрозрачную) сетчатую поверхность, причём отдельные ячейки (грани) этой сетчатой поверхности (плоские четырёхугольники) автоматически окрашиваются в разные цвета.

С помощью функции surf получаются хотя и искусственно раскрашенные, но весьма наглядные изображения. Если же мы хотим добиться более естественных и объективных способов окрашивания поверхностей, то следует использовать функцию surfl.

Функция surfl трактует поверхность графика как материальную поверхность с определёнными физическими свойствами по отражению света. По умолчанию задаётся некоторый источник света, освещающий такую материальную поверхность, после чего рассчитываеются траектории отражённых лучей, попадающих в объектив условной камеры. Изображение в такой камере и показывается в графическом окне системы MATLAB.

Так как разные материалы по-разному отражают падающие лучи, то можно подобрать некоторый материал, чтобы получить наилучшее (с точки зрения пользователя) изображение. В частности, можно использовать функцию

colormap( copper )

с помощью которой для изображения графика выбирается набор цветов (по-английски - colormap), который характерен для света, отражающегося от медной поверхности (медь по-английски - copper). После этого применение функции

surfl( X, Y, Z )

вместо surf(X,Y,Z) приводит к получению очень реалистически выглядящего и очень наглядного графика:


Можно с такого графика убрать чёрные линии, изображающие рёбра, а также добиться ещё более плавного перехода освещения поверхности, если выполнить команду

shading interp

означающую, что теперь цвет (освещённость) будет меняться даже внутри отдельных граней (ячеек). В итоге будет получаться совсем уж реальное изображение некоторой объёмной фигуры. Лучше это или хуже для задачи изображения графиков функций двух переменных - судить конкретному пользователю.

Algorithms

The grid function sets these graphics object properties to either 'on' or 'off' :

XGrid , YGrid , and ZGrid when working with Cartesian Axes objects.

ThetaGrid and RGrid when working with PolarAxes objects.

Grid when working with GeographicAxes objects.

GridVisible when working with other types of graphics objects, such as a HeatmapChart object.

Syntax

Grid on matlab что это

Display or hide axes grid lines

Input Arguments

Target object, specified as one of the following:

Any type of axes object: an Axes , PolarAxes , or GeographicAxes object.

A standalone visualization that has a GridVisible property. For example, a heatmap chart has a GridVisible property.

An array of axes or standalone visualizations that belong to the same class. To determine the class, use the class function.

If you do not specify the target, then the grid function affects the graphics object returned by the gca command.

When working with Cartesian axes, some axes properties affect the appearance of the grid lines. This table lists a subset of axes properties related to the grid lines.

Axes PropertyDescription
XTick , YTick , ZTick Location of tick marks and major grid lines for each axis direction
XGrid , YGrid , ZGrid Display of major grid lines for each axis direction
XMinorGrid , YMinorGrid , ZMinorGrid Display of minor grid lines for each axis direction
LineWidth Line width of grid lines, axes box outline, and tick marks
GridLineStyle Major grid line style
MinorGridLineStyle Minor grid line style
GridColor Major grid line color
MinorGridColor Minor grid line color
GridAlpha Major grid line transparency
MinorGridAlpha Minor grid line transparency
Layer Location of grid lines in relation to the plotted data

When working with polar axes, some polar axes properties affect the appearance of the grid lines. This table lists a subset of polar axes properties related to the grid lines.

PolarAxes PropertyDescription
ThetaTick , RTick Location of tick marks and major grid lines for each axis direction
ThetaGrid , RGrid Display of major grid lines for each axis direction
ThetaMinorGrid , RMinorGrid Display of minor grid lines for each axis direction
LineWidth Width of outline, tick marks, and grid lines
GridLineStyle Major grid line style
MinorGridLineStyle Minor grid line style
GridColor Major grid line color
MinorGridColor Minor grid line color
GridAlpha Major grid line transparency
MinorGridAlpha Minor grid line transparency
Layer Location of grid lines in relation to the plotted data

When working with geographic axes, some geographic axes properties affect the appearance of the grid lines. This table lists a subset of geographic axes properties related to the grid lines. Note that GeographicAxes objects do not support minor grid lines.

GeographicAxes PropertyDescription
Grid Display of latitude and longitude grid lines
LineWidth Line width of grid lines, box outline, and tick marks
GridLineStyle Grid line style
GridColor Color of grid lines
GridAlpha Grid line transparency

Description

grid on displays the major grid lines for the current axes returned by the gca command. Major grid lines extend from each tick mark.

grid off removes all grid lines from the current axes or chart.

grid toggles the visibility of the major grid lines.

grid minor toggles the visibility of the minor grid lines. Minor grid lines lie between the tick marks. Not all types of charts support minor grid lines.

grid( target , ___ ) uses the axes or standalone visualization specified by target instead of the current axes. Specify target as the first input argument. Use single quotes around other input arguments, for example, grid(target,'on') .

Grid on matlab что это

Display or hide axes grid lines

Справочник по MATLAB - Графические команды и функции (В.Г.Потемкин)

Информация в данной статье относится к релизам программы MATLAB ранее 2016 года, и поэтому может содержать устаревшую информацию в связи с изменением функционала инструментов. С более актуальной информацией вы можете ознакомиться в разделе документация MATLAB на русском языке.

В состав системы MATLAB входит мощная графическая подсистема, которая поддерживает как средства визуализации двумерной и трехмерной графики на экран терминала, так и средства презентационной графики. Следует выделить несколько уровней работы с графическими объектами. В первую очередь это команды и функции, ориентированные на конечного пользователя и предназначенные для построения графиков в прямоугольных и полярных координатах, гистограмм и столбцовых диаграмм, трехмерных поверхностей и линий уровня, анимации. Графические команды высокого уровня автоматически контролируют масштаб, выбор цветов, не требуя манипуляций со свойствами графических объектов. Соответствующий низкоуровневый интерфейс обеспечивается дескрипторной графикой, когда каждому графическому объекту ставится в соответствие графическая поддержка (дескриптор), на который можно ссылаться при обращении к этому объекту. Используя дескрипторную графику, можно создавать меню, кнопки вызова, текстовые панели и другие объекты графического интерфейса.

Из-за ограниченного объема данного справочного пособия в него включены только графические команды и функции с минимальными элементами дескрипторной графики. Заинтересованному читателю следует обратиться к документации по системе MATLAB, и в первую очередь к только что вышедшей из печати книге “Using MATLAB Graphics” (Natick, 1996).

Элементарные графические функции системы MATLAB позволяют построить на экране и вывести на печатающее устройство следующие типы графиков: линейный, логарифмический, полулогарифмический, полярный.

Для каждого графика можно задать заголовок, нанести обозначение осей и масштабную сетку.

PLOT - график в линейном масштабе

plot(y)
plot(x, y)
plot(x, y, s)
plot(x1, y1, s1, x2, y2, s2, . )

Команда plot(y) строит график элементов одномерного массива y в зависимости от номера элемента; если элементы массива y комплексные, то строится график plot(real(y), imag(y)). Если Y - двумерный действительный массив, то строятся графики для столбцов; в случае комплексных элементов их мнимые части игнорируются.

Команда plot(x, y) соответствует построению обычной функции, когда одномерный массив x соответствует значениям аргумента, а одномерный массив y - значениям функции. Когда один из массивов X или Y либо оба двумерные, реализуются следующие построения:

  • если массив Y двумерный, а массив x одномерный, то строятся графики для столбцов массива Y в зависимости от элементов вектора x;
  • если двумерным является массив X, а массив y одномерный, то строятся графики столбцов массива X в зависимости от элементов вектора y;
  • если оба массива X и Y двумерные, то строятся зависимости столбцов массива Y от столбцов массива X.

Команда plot(x, y, s) позволяет выделить график функции, указав способ отображения линии, способ отображения точек, цвет линий и точек с помощью строковой переменной s, которая может включать до трех символов из следующей таблицы:

Если цвет линии не указан, он выбирается по умолчанию из шести первых цветов, с желтого до синего, повторяясь циклически.

Команда plot(x1, y1, s1, x2, y2, s2, . ) позволяет объединить на одном графике несколько функций y1(x1), y2(x2), . определив для каждой из них свой способ отображения.

Обращение к командам plot вида plot(x, y, s1, x, y, s2) позволяет для графика y(x) определить дополнительные свойства, для указания которых применения одной строковой переменной s1 недостаточно, например при задании разных цветов для линии и для точек на ней.

Примеры:

Построим график функции y = sin(x) на отрезке [- p p ] с шагом p /500:

x = -pi:pi/500:pi;
y = sin(x);
plot(y) % рис. а
plot(x, y) % рис. б

График на рис. а отображает значения одномерного массива y, состоящего из 1001 элемента, как функцию от номера элемента; график на рис. б отображает значения того же массива как функцию элементов массива x.

Рассмотрим различные способы применения функции plot(x, y) на примере графиков двух функций y1 = sin(x) и y2 = xsin(x):

x1 = -pi:pi/500:pi;
y1 = sin(x1);
y2 = x1.*sin(x1);
plot(x1',[y1' y2']) % рис. в
plot( [y1' y2'], x1') % рис. г

x2 = x1/2;
y2 = x2.*sin(x2);
plot([x1' x2'], [y1' y2']) % рис. д

Двумерные графики

Description

grid on displays the major grid lines for the current axes returned by the gca command. Major grid lines extend from each tick mark.

grid off removes all grid lines from the current axes or chart.

grid toggles the visibility of the major grid lines.

grid minor toggles the visibility of the minor grid lines. Minor grid lines lie between the tick marks. Not all types of charts support minor grid lines.

grid( target , ___ ) uses the axes or standalone visualization specified by target instead of the current axes. Specify target as the first input argument. Use single quotes around other input arguments, for example, grid(target,'on') .

Трехмерные графики

В системе MATLAB предусмотрено несколько команд и функций для построения трехмерных графиков. Значения элементов числового массива рассматриваются как z-координаты точек над плоскостью, определяемой координатами x и y. Возможно несколько способов соединения этих точек. Первый из них - это соединение точек в сечении (функция plot3), второй - построение сетчатых поверхностей (функции mesh и surf). Поверхность, построенная с помощью функции mesh, - это сетчатая поверхность, ячейки которой имеют цвет фона, а их границы могут иметь цвет, который определяется свойством EdgeColor графического объекта surface. Поверхность, построенная с помощью функции surf, - это сетчатая поверхность, у которой может быть задан цвет не только границы, но и ячейки; последнее управляется свойством FaceColor графического объекта surface. Уровень изложения данной книги не требует от читателя знания объектно-ориентированного программирования. Ее объем не позволяет в полной мере описать графическую подсистему, которая построена на таком подходе. Заинтересованному читателю рекомендуем обратиться к документации по системе MATLAB, и в первую очередь к только что вышедшей из печати книге Using MATLAB Graphics (Natick, 1996).

Examples

Display Grid Lines

Display the grid lines for a sine plot.

Figure contains an axes object. The axes object contains an object of type line.

Remove Grid Lines

Create a surface plot and remove the grid lines.

Figure contains an axes object. The axes object contains an object of type surface.

Display Major and Minor Grid Lines

Display the major and minor grid lines for a sine plot.

Figure contains an axes object. The axes object contains an object of type line.

Display Grid Lines on Specific Axes

Starting in R2019b, you can display a tiling of plots using the tiledlayout and nexttile functions. Call the tiledlayout function to create a 2-by-1 tiled chart layout. Call the nexttile function to create the axes objects ax1 and ax2 . Plot data into each axes. Then display grid lines in the bottom plot by passing ax2 to the grid function.

Figure contains 2 axes objects. Axes object 1 contains an object of type line. Axes object 2 contains an object of type line.

Examples

Display Grid Lines

Display the grid lines for a sine plot.

Figure contains an axes object. The axes object contains an object of type line.

Remove Grid Lines

Create a surface plot and remove the grid lines.

Figure contains an axes object. The axes object contains an object of type surface.

Display Major and Minor Grid Lines

Display the major and minor grid lines for a sine plot.

Figure contains an axes object. The axes object contains an object of type line.

Display Grid Lines on Specific Axes

Starting in R2019b, you can display a tiling of plots using the tiledlayout and nexttile functions. Call the tiledlayout function to create a 2-by-1 tiled chart layout. Call the nexttile function to create the axes objects ax1 and ax2 . Plot data into each axes. Then display grid lines in the bottom plot by passing ax2 to the grid function.

Figure contains 2 axes objects. Axes object 1 contains an object of type line. Axes object 2 contains an object of type line.

Надписи и пояснения к графикам

Специальная графика

Раздел специальной графики включает графические команды и функции для построения столбцовых диаграмм, гистограмм, средств отображения векторов и комплексных элементов, вывода дискретных последовательностей данных, а также движущихся траекторий как для двумерной, так и для трехмерной графики. Этот раздел получил свое дальнейшее развитие в версии системы MATLAB 5.0, где специальные графические средства улучшены и существенно расширены.

Input Arguments

Target object, specified as one of the following:

Any type of axes object: an Axes , PolarAxes , or GeographicAxes object.

A standalone visualization that has a GridVisible property. For example, a heatmap chart has a GridVisible property.

An array of axes or standalone visualizations that belong to the same class. To determine the class, use the class function.

If you do not specify the target, then the grid function affects the graphics object returned by the gca command.

When working with Cartesian axes, some axes properties affect the appearance of the grid lines. This table lists a subset of axes properties related to the grid lines.

Axes PropertyDescription
XTick , YTick , ZTick Location of tick marks and major grid lines for each axis direction
XGrid , YGrid , ZGrid Display of major grid lines for each axis direction
XMinorGrid , YMinorGrid , ZMinorGrid Display of minor grid lines for each axis direction
LineWidth Line width of grid lines, axes box outline, and tick marks
GridLineStyle Major grid line style
MinorGridLineStyle Minor grid line style
GridColor Major grid line color
MinorGridColor Minor grid line color
GridAlpha Major grid line transparency
MinorGridAlpha Minor grid line transparency
Layer Location of grid lines in relation to the plotted data

When working with polar axes, some polar axes properties affect the appearance of the grid lines. This table lists a subset of polar axes properties related to the grid lines.

PolarAxes PropertyDescription
ThetaTick , RTick Location of tick marks and major grid lines for each axis direction
ThetaGrid , RGrid Display of major grid lines for each axis direction
ThetaMinorGrid , RMinorGrid Display of minor grid lines for each axis direction
LineWidth Width of outline, tick marks, and grid lines
GridLineStyle Major grid line style
MinorGridLineStyle Minor grid line style
GridColor Major grid line color
MinorGridColor Minor grid line color
GridAlpha Major grid line transparency
MinorGridAlpha Minor grid line transparency
Layer Location of grid lines in relation to the plotted data

When working with geographic axes, some geographic axes properties affect the appearance of the grid lines. This table lists a subset of geographic axes properties related to the grid lines. Note that GeographicAxes objects do not support minor grid lines.

GeographicAxes PropertyDescription
Grid Display of latitude and longitude grid lines
LineWidth Line width of grid lines, box outline, and tick marks
GridLineStyle Grid line style
GridColor Color of grid lines
GridAlpha Grid line transparency

Двумерные графики

Algorithms

The grid function sets these graphics object properties to either 'on' or 'off' :

XGrid , YGrid , and ZGrid when working with Cartesian Axes objects.

ThetaGrid and RGrid when working with PolarAxes objects.

Grid when working with GeographicAxes objects.

GridVisible when working with other types of graphics objects, such as a HeatmapChart object.

Syntax

Читайте также: