Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка Моделювання систем електропостачання...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
962 Кб
Скачать
☆

Тема 6. Построение графиков.

Цель работы: Получить навыки построения графиков отрезками прямых, изучить работу с графиками. Научится создавать массивы данных для трехмерной графики.

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

Для построения графика функции у = f(x) необходимо задать совокупность точек х и у. Для аргумента х это выполняется оператором двоеточие, для у – надлежащим программированием выражения для функции, т.е. необходимо применить знаки арифметических операций над массивами:

: .  ; . / ; . .

Для отображения таких функций используется декартовая прямоугольная система координат. Команда построения графика функции у = f(x) plot имеет ряд параметров, которые рассмотрим ниже.

Рlot(х, у) – строит график функции у = f(x), координаты точек (х, у) которой берутся из векторов одинакового размера х, у.

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

Таблица 2

Цвет линии

Тип точки

Тип линии

s = y – желтый

m – фиолетовый

c – голубой

r – красный

g – зеленый

b – синий

w – белый

k – черный

s =  – точка

О – окружность

х – крест

+ – плюс

 – звездочка

s – квадрат

d – ромб

 – треугольник (вниз)

 – треугольник (вверх)

< – треугольник (влево)

> – треугольник (вправо)

p – пятиугольник

h – шестиугольник

s = – сплошная

: – двойной пунктир

 . – штрихпунктир

  – штриховая

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

Рассмотрим пример построения графиков трех функций y1 = sin x; y2 = sin2 x; y3 = sin3 x с различным стилем:

>> x =  2  pi : O . 01  pi : 2  pi ; y1 = sin (x) ; y2 = sin (x) . 2 ; y3 = sin (x) ) . 3 ; >> plot(х, у1,   m , x, y2,   . + r , x, y3,    ok )

Здесь график функции у1 строится сплошной фиолетовой линией, график у2 строится штрихпунктирной линией с точками в виде знака “+” красного цвета, график у3 строится штриховой линией с кружками черного цвета.

Создание массивов данных для трехмерной графики

Трехмерные поверхности описываются функцией двух переменных z = f(x, y). Построение трехмерных графиков требует определение для х и у двухмерных массивов – матриц. Для создания таких массивов служит функция meshgrid, которая записывается следующим образом:

[X, Y] = meshgrid(x, y) ;

В основном она используется совместно с функциями построения графиков трехмерных поверхностей. Функция преобразует область заданную векторами х и у, в массивы X и Y, которые могут быть использованы для вычисления функции двух переменных и построения трехмерных графиков. Строки выходного массива Х являются копиями вектора х, а столбцы Y – копиями вектора у.

Пример:

>> [X Y]

=

mesh grid (4 : 7 , 9 : 13)

Х

=

4 5 6 7

4 5 6 7

4 5 6 7

4 5 6 7

4 5 6 7

Y

=

9 9 9 9

10 10 10 10

11 11 11 11

12 12 12 12

13 13 13 13

Приведем еще пример применения функции meshgrid:

>> [X Y] = meshgrid ( 1 : 0.1 : 1, 1 : 0.1 : 1);

Такой вызов функции создает опорную плоскость для построения трехмерной поверхности при изменении х и у от – 1 до 1 с шагом 0.1.

Построение графиков поверхностей

Для построения графиков функции z = f(x, y) используется команды plot3 ( … ), которая является аналогом команды plot ( … ). Она строит аксонометрическое изображение трехмерной поверхности и имеет следующие формы:

рlot3 (х, у, z) – строит массив точек, представленных векторами х, у, z и соединяет их отрезками прямых.

Рlot3 (X, Y, Z), где X, Y, Z – три матрицы одинакового размера, строит точки с координатами X(i, : ), Y(i, : ) и Z(i, : ) и соединяет их отрезками прямых. Пример построения графика трехмерной поверхности Z = x2 + y2:

>> [X Y]

=

meshgrid ([  3 : 0.15 : 3])

>> Z

=

X. ^ 2 + Y. ^ 2 ;

>> plot 3(X, Y, Z)

рlot3 (X, Y, Z, S) – обеспечивает построение графика поверхности, но со спецификацией стиля линий и точек, соответствующей спецификации команды plot.

Включение и выключение масштабной сетки

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

grid on – добавляет сетку к текущему графику;

grid off – отключает сетку;

grid – последовательно производит включение и отключение сетки.

Представление нескольких графиков в одном окне

Иногда необходимо в одном окне поместить несколько графиков без наложения их друг на друга. Особенно удобно такое представление при построении эпюр напряженно-деформированного состояния элементов стержневых и пластинчатых систем. Для этого служит команда subplot, которую необходимо записать перед командой plot.

Subplot (m, n, p) – разбивает графическое окно на m  n подокон, при этом m – число подокон по горизонтали, п – число окон по вертикали, р – номер подокна, в которое будет выводиться текущий график.

Ввод текста на график с помощью мыши

Для маркировки графиков можно ввести любой текст с помощью мыши командой gtext. Команда помещается после команды plot.

Gtext ( string ) – выводит на график перемещаемый мышкой маркер в виде крестика. Установив маркер в нужное место и щелкнув кнопкой мыши, получим текст на графике.

Управление свойствами осей графиков

Если не задавать масштаб графика, то он строится командой plot автоматически. Не всегда этот масштаб удовлетворяет пользователя. Команда axis позволяет установить любой масштаб.

Axis ([ x min x max y min y max ]) – устанавливает нужный диапазон координат графика по осям х и у.

Более полно о возможностях графической визуализации MATLAB можно узнать в специализированных изданиях.