
- •2. Matlab.
- •2.5.1.1.3. Графики plot(X,y,s).
- •2.5.1.1.4. Графики plotyy с двумя осями y.
- •2.5.1.2. Графики в логарифмическом и полулогарифмическом масштабах [3].
- •2.5.1.3. График в полярных координатах [3].
- •2.5.1.4. Оформление графиков [1, с.135]
- •2.5.1.5. Управление осями графиков.
- •2.5.1.6. Подграфики.
- •2.5.1.7. График комплексного числа.
- •Использование окна “Workspace” для задания типа и параметров графика [1, с. 113].
2.5.1.2. Графики в логарифмическом и полулогарифмическом масштабах [3].
Используются функции со следующими именами: loglog – обе оси логарифмические; semilogx и semilogy –соответственно логарифмическими являются только ось Х или - Y. Эти функции имеют такой же синтаксис, как и функция plot; поэтому для записи любой из этих функций достаточно в аналогичном варианте использования функции plot только поменять имя функции. Например, график y = exp(x) в полулогарифмическом масштабе по оси y имеет следующий вид (ось х будет иметь линейный масштаб):
2.5.1.3. График в полярных координатах [3].
Синтаксис:
polar(phi, rho) polar(phi, rho, s)
Описание:
Команды polar(...) реализуют построение графиков в полярных координатах, задаваемых углом phi и радиусом rho. Здесь s – также, как в plot, строковая переменная для отображения линий, маркеров (точек) и цвета.
Пример построения графика функции rho = sin(2 * phi) * cos(2 * phi) в полярных координатах:
>>phi = 0 : 0.01 : 2 * pi; >>polar(phi, sin(2 * phi) .* cos(2 * phi))
2.5.1.4. Оформление графиков [1, с.135]
Удобство использования графиков во многом зависит от тех элементов оформления, которые добавляются или изменяются после его создания: координатная сетка, подписи к осям, заголовок и легенда. Такие возможности реализуются либо с помощью дополнительных параметров, задающих свойства объектов (в низкоуровневой графике), либо с помощью вспомогательных команд и функций. Например, сетка наносится командой grid on, функции xlabel, уlabel служат для размещения подписей к осям, a title— для заголовка. При необходимости сопроводить график легендой следует использовать функцию legend. Все перечисленные команды применимы к графикам как в линейном, так и в логарифмическом и полулогарифмическом масштабах. С особенностями использования функции legend в версии 7 можно ознакомиться в [1, с. 137].
Символы кириллицы могут неправильно отображаться в нелокализованной версии MATLAB. Один из способов решения проблемы заключается в изменении текстового файла matlabrc.m, находящегося в подкаталоге tool-box\local основного каталога MATLAB. Используя любой текстовый редактор, необходимо добавить в конец файла строку: set(0,'DefaultAxesFontName','имя_ шрифта_с_русскими_символами').
Дополнительную информацию можно также получить в [1, глава 8, примечание к разделу "Сервисные функции для работы со строками"]).
Пример вывода графика изменения суточной температуры:
ПРИМЕЧАНИЯ: 1. Здесь пришлось в функциях xlabel и legend применить в строковом выражении английский алфавит (иначе - ошибка).
2.Для выключения сетки используется запись grid off.
На поле графика можно также добавлять текстовые строки, используя функцию text, но для этого необходимо знать имена и синтаксис управляющих символов, которые могут входить в строковое выражение этой функции. Например, в системе подготовки научных текстов TEX есть сочетания символов, имеющих следующий смысл:
\ - знак, показывающий, что дальше будут следовать управляющие символы; пробел после этого знака и между управляющими символами не требуется;
newline - начать со следующей строки;
leftarrow – изображение стрелки влево;
leg – выводит знак ;
pi - обеспечивает запись буквы ; …
Например, запись text(10, 15, ‘\leftarrowsin(x)’) выведет на графике строку sin(x) . При этом кончик стрелки будет находиться в точке с координатами х=10 и y =15 (т.е. это координаты точки ввода строки).
Повторное использование функции plot и функций, заменяющих ее (loglog, semilogx, …) удаляет предыдущее изображение на текущем графике. Если требуется построение нового графика поверх существующего, то перед вторичным вызовом функции plot необходимо выполнить функцию hold on.