Иллюстрированный самоучитель по MatLab

Обычная графика MATLAB

  • Построение графиков отрезками прямых

    Одно из достоинств системы MATLAB – обилие средств графики, начиная от команд построения простых графиков функций одной переменной в декартовой системе координат и кончая комбинированными и презентационными графиками с элементами анимации, а также средствами проектирования графического пользовательского интерфейса (GUI).
  • Графики в логарифмическом масштабе

    Для построения графиков функций со значениями х и у, изменяющимися в широких пределах, нередко используются логарифмические масштабы. Рассмотрим команды, которые используются в таких случаях. | loglogx(…) – синтаксис команды аналогичен ранее рассмотренному для функции plot(…).
  • Графики в полулогарифмическом масштабе

    В некоторых случаях предпочтителен полулогарифмический масштаб графиков, когда по одной оси задается логарифмический масштаб, а по другой – линейный. | Для построения графиков функций в полулогарифмическом масштабе используются следующие команды:
  • Столбцовые диаграммы

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

    Классическая гистограмма характеризует числа попаданий значений элементов вектора Y в М интервалов с представлением этих чисел в виде столбцовой диаграммы. Для получения данных для гистограммы служит функция hist, записываемая в следующем виде:
  • Лестничные графики – команды stairs

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

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

    Еще один вид графика функции у(х) – ее представление дискретными отсчетами. Этот вид графика применяется, например, при описании квантования сигналов. Каждый отсчет представляется вертикальной чертой, увенчанной кружком, причем высота черты соответствует y-координате точки. | Рис. 6.11.
  • Графики в полярной системе координат

    В полярной системе координат любая точка представляется как конец радиус-вектора, исходящего из начала системы координат, имеющего длину RHO и угол ТНЕТА. Для построения графика функции RHO(THETA) используются приведенные ниже команды. Угол ТНЕТА обычно меняется от 0 до 2*pi.
  • Угловые гистограммы

    Угловые гистограммы находят применение в индикаторах радиолокационных станций, для отображения "роз" ветров и при построении других специальных графиков. Для этого используется ряд команд типа rose(…): | rose(THETA) – строит угловую гистограмму для 20 интервалов по данным вектора ТНЕТА;
  • Графики векторов

    Иногда желательно представление ряда радиус-векторов в их обычном виде, то есть в виде стрелок, исходящих из начала координат и имеющих угол и длину, определяемые действительной и мнимой частью комплексных чисел, представляющих эти векторы. Для этого служит группа команд compass:
  • График проекций векторов на плоскость

    Иногда полезно отображать комплексные величины вида z = х + yi в виде проекции радиус-вектора на плоскость. Для этого используется семейство графических команд класса feather: | feather(U.V) – строит график проекции векторов, заданных компонентами U и V, на плоскость;
  • Контурные графики

    Контурные графики служат для представления на плоскости функции двух переменных вида z(x, у) с помощью линий равного уровня. Они получаются, если трехмерная поверхность пересекается рядом плоскостей, расположенных параллельно друг другу.
  • Создание массивов данных для трехмерной графики

    Трехмерные поверхности обычно описываются функцией двух переменных z(x, у). Специфика построения трехмерных графиков требует не просто задания ряда значений х и у, то есть векторов х и у. Она требует определения для X и Y двумерных массивов – матриц.
  • Графики поля градиентов quiver

    Для построения графиков полей градиента служат команды quiver: | quiver(X.Y.U.V) – строит график поля градиентов в виде стрелок для каждой пары элементов массивов X и Y, причем элементы массивов U и V указывают направление и размер стрелок;
  • Построение графиков поверхностей

    Команда plot3(…) является аналогом команды plot (…), но относится к функции двух переменных z(x, у). Она строит аксонометрическое изображение трехмерных поверхностей и представлена следующими формами:
  • Сетчатые 3D-графики с окраской

    Наиболее представительными и наглядными являются сетчатые графики поверхностей с заданной или функциональной окраской. В названии их команд присутствует слово mesh. Имеются три группы таких команд. Ниже приведены данные о наиболее полных формах этих команд.
  • Сетчатые 3D-графики с проекциями

    Иногда график поверхности полезно объединить с контурным графиком ее проекции на плоскость, расположенным под поверхностью. | Для этого используется команда meshc: | meshc(…) – аналогична mesh(…), но помимо графика поверхности дает изображение ее проекции в виде линий равного уровня (графика типа contour). | Ниже дан пример применения этой команды: | >> [X.Y]=meshgrid([-3:0.15:3]); | >> Z=X.^2+Y.^2;
  • Построение поверхности столбцами

    Еще один тип представления поверхности, когда она строится из многочисленных столбцов, дают команды класса meshz: | meshz(…) – аналогична mesh(…), но строит поверхность как бы в виде столбиков. Следующий пример иллюстрирует применение команды mesh: | >> [X.Y]=meshgrid([-3:0.15:3]); | >> Z=X.^2+Y.^2;
  • Построение поверхности с окраской

    Особенно наглядное представление о поверхностях дают сетчатые графики, использующие функциональную закраску ячеек. Например, цвет окраски поверхности z(x, у) может быть поставлен в соответствие с высотой z поверхности с выбором для малых высот темных тонов, а для больших – светлых.
  • Построение поверхности и ее проекции

    Для повышения наглядности представления поверхностей можно использовать дополнительный график линий равного уровня, получаемый путем проецирования поверхности на опорную плоскость графика (под поверхностью). Для этого используется команда surfс:
  • Построение освещенной поверхности

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

    Рекомендуется с помощью команды help ознакомиться с командами, задающими управление подсветкой и связанными с ней оптическими эффектами: | diffuse – задание эффекта диффузионного рассеяния; | lighting – управление подсветкой; | material – имитация свойств рассеивания света различными материалами;
  • График трехмерной слоеной поверхности

    Иногда бывают полезны графики трехмерных слоеных поверхностей, как бы состоящие из тонких пластинок – слоев. Такие поверхности строит функция water-fall (водопад): | waterfal(…) – строит поверхность, как команда mesh(…), но без показа ребер сетки.
  • Tрехмерные контурные графики

    Трехмерный контурный график представляет собой расположенные в пространстве линии равного уровня, полученные при расслоении трехмерной фигуры рядом секущих плоскостей, расположенных параллельно опорной плоскости фигуры.
  • Установка титульной надписи. Установка осевых надписей.

    После того как график уже построен, MATLAB позволяет выполнить его форматирование или оформление в нужном виде. Соответствующие этому средства описаны ниже. Так, для установки над графиком титульной надписи используется следующая команда:
  • Ввод текста в любое место графика

    Часто возникает необходимость добавления текста в определенное место графика, например для обозначения той или иной кривой графика. Для этого используется команда text: | text(X.Y. 'string') – добавляет в двумерный график текст, заданный строковой константой 'string', так что начало текста расположено в точке с координатами (X, Y).
  • Позиционирование текста с помощью мыши

    Очень удобный способ ввода текста предоставляет команда gtext: | gtext('string') – задает выводимый на график текст в виде строковой константы ' string' и выводит на график перемещаемый мышью маркер в виде крестика.
  • Вывод пояснений

    Пояснение в виде отрезков линий со справочными надписями, размещаемое внутри графика или около него, называется легендой. Для создания легенды используются различные варианты команды legend: | legend(string1,string2, strings,…) – добавляет к текущему графику легенду в виде строк, указанных в списке параметров;
  • Маркировка линий уровня на контурных графиках

    К сожалению, контурные графики плохо приспособлены для количественных оценок, если их линии не маркированы. В качестве маркеров используются крестики, рядом с которыми располагаются значения высот. Для маркировки контурных графиков используются команды группы clabel:
  • Управление свойствами осей графиков

    Обычно графики выводятся в режиме автоматического масштабирования. Следующие команды класса axis меняют эту ситуацию: | axis([XMIN XMAX YMIN YMAX]) – установка диапазонов координат по осям х и у для текущего двумерного графика;
  • Включение и выключение сетки

    В математической, физической и иной литературе при построении графиков в дополнение к разметке осей часто используют масштабную сетку. Команды grid позволяют задавать построение сетки или отменять это построение: | grid on – добавляет сетку к текущему графику; | grid off – отключает сетку;
  • Наложение графиков друг на друга

    Во многих случаях желательно построение многих наложенных друг на друга графиков в одном и том же окне. Для этого служит команда продолжения графических построений hold. Она используется в следующих формах:
  • Разбиение графического окна

    Бывает, что в одном окне надо расположить несколько координатных осей с различными графиками без наложения их друг на друга. Для этого используются команды subplot, применяемые перед построением графиков: | subplot – создает новые объекты класса axes (подокна);
  • Изменение масштаба графика

    Для изменения масштаба двумерных графиков используются команды класса zoom: | zoom – переключает состояние режима интерактивного изменения масштаба для текущего графика; | zoom (FACTOR) устанавливает масштаб в соответствии с коэффициентом FACTOR;
  • Установка палитры цветов

    Поскольку графика MATLAB обеспечивает получение цветных изображений, в ней есть ряд команд для управления цветом и различными световыми эффектами. Среди них важное место занимает установка палитры цветов.
  • Установка соответствия между палитрой цветов и масштабом осей. Окраска поверхностей.

    При использовании функциональной окраски важное значение имеет установка соответствия между палитрой цветов и масштабом координатных осей. Так, выбор ограниченного диапазона интенсивностей цветов может привести к тому, что цветовая гамма будет блеклой и функциональная закраска не будет достигать своих целей.
  • Установка палитры псевдоцветов

    Довольно часто возникает необходимость представления той или иной матрицы в цветах. Для этого используют псевдоцвета, зависящие от содержимого ячеек. Такое представление реализуют команды класса pcolor: | pcolor (С) – задает представление матрицы С в псевдоцвете;
  • Создание закрашенного многоугольника

    Для создания закрашенного пятна в виде многоугольника может использоваться команда patch: | patch(X,Y,C) – создает закрашенный многоугольник, вершины которого заданы векторами X и Y в текущей системе координат, а спецификация окраски задана вектором цветовой палитры С.
  • Окраска плоских многоугольников

    Для построения окрашенных в заданный цвет плоских многоугольников может использоваться команда fill (заполнить): | fill(X.Y.C) – строит закрашенный плоский многоугольник, вершины которого задаются векторами X и Y с цветом, заданным С. Многоугольник должен быть замкнутым.
  • Вывод шкалы цветов

    При использовании функциональной окраски весьма полезным является вывод шкалы цветов командой colorbar. Ее варианты перечислены ниже: | colorbar('vert') – выводит вертикальную шкалу цветов на текущий график; | colorbar('horiz') – выводит горизонтальную шкалу цветов на текущий график;
  • Цветные плоские круговые диаграммы. Другие команды управления световыми эффектами.

    Закрашенные секторы часто используются для построения круговых диаграмм. Для этого в MATLAB служит команда piе: | pie(X) – строит круговую диаграмму по данным нормализованного вектора X/ SUM(X), SUM(X)– сумма элементов вектора.
  • Окрашенные многоугольники в пространстве

    Для закраски многоугольников, определенных в пространстве, служит команда fill3. Ниже представлены основные ее формы: | fill3(X,Y,Z,C) – строит закрашенный многоугольник в пространстве с данными вершин, хранящимися в векторах X, Y и Z, и цветом, заданным палитрой С.
  • Цветные объемные круговые диаграммы

    Иногда используются объемные круговые диаграммы. Для их построения служит команда pie3: | pie3(…) – аналогична команде pie(…), но дает построение объемных секторов. | В приведенном ниже примере строится объемная диаграмма с отделением двух секторов, показанная на рис. 6.51: | >> X=[1 2 3 4 5];
  • Построение цилиндра

    Для построения цилиндра в виде трехмерной фигуры применяется функция cylinder: | [X,Y,Z]=cylinder(R,N) – создает массивы X, Y и Z, описывающие цилиндрическую поверхность с радиусом R и числом узловых точек N для последующего построения с помощью функции surf(X.Y.Z);
  • Построение сферы

    Для расчета массивов X, Y и Z координат точек сферы как трехмерной фигуры используется функция sphere: | [X.Y,Z]=sphere(N) – генерирует матрицы X, Y и Z размера (N+l)x(N+l) для последующего построения сферы с помощью команд surf (X, Y.Z) или surfl (X. Y.Z);
  • Трехмерная графика с треугольными плоскостями

    К числу специальных видов графики относится построение объемных фигур с помощью плоских треугольников. Для построения таких фигур в виде каркаса (без окраски и отображения плоскостей) используется команда trimesh:
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.