MATLAB - Графика

В этой главе мы продолжим изучение графических и графических возможностей MATLAB. Обсудим -

  • Рисование гистограмм
  • Рисование контуров
  • Трехмерные сюжеты

Рисование гистограмм

В barкоманда рисует двухмерную гистограмму. Давайте рассмотрим пример, чтобы продемонстрировать идею.

пример

У нас будет воображаемый класс с 10 учениками. Нам известно, что эти студенты получают 75, 58, 90, 87, 50, 85, 92, 75, 60 и 95 процентов. Мы нарисуем гистограмму для этих данных.

Создайте файл сценария и введите следующий код -

x = [1:10];
y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95];
bar(x,y), xlabel('Student'),ylabel('Score'),
title('First Sem:')
print -deps graph.eps

Когда вы запускаете файл, MATLAB отображает следующую гистограмму -

Рисование контуров

Линия контура функции двух переменных - это кривая, вдоль которой функция имеет постоянное значение. Контурные линии используются для создания контурных карт путем соединения точек с одинаковой высотой над заданным уровнем, например среднего уровня моря.

MATLAB предоставляет contour функция для рисования контурных карт.

пример

Создадим контурную карту, которая показывает контурные линии для заданной функции g = f (x, y). Эта функция имеет две переменные. Итак, нам нужно будет сгенерировать две независимые переменные, то есть два набора данных x и y. Это делается путем вызоваmeshgrid команда.

В meshgrid Команда используется для создания матрицы элементов, которые дают диапазон по x и y вместе со спецификацией приращения в каждом случае.

Построим график нашей функции g = f (x, y), где −5 ≤ x ≤ 5, −3 ≤ y ≤ 3. Возьмем приращение 0,1 для обоих значений. Переменные установлены как -

[x,y] = meshgrid(–5:0.1:5, –3:0.1:3);

Наконец, нам нужно назначить функцию. Пусть наша функция будет: x 2 + y 2

Создайте файл сценария и введите следующий код -

[x,y] = meshgrid(-5:0.1:5,-3:0.1:3);   %independent variables
g = x.^2 + y.^2;                       % our function
contour(x,y,g)                         % call the contour function
print -deps graph.eps

Когда вы запускаете файл, MATLAB отображает следующую контурную карту -

Давайте немного изменим код, чтобы нарядить карту

[x,y] = meshgrid(-5:0.1:5,-3:0.1:3);   %independent variables
g = x.^2 + y.^2;                       % our function
[C, h] = contour(x,y,g);               % call the contour function
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2)
print -deps graph.eps

Когда вы запускаете файл, MATLAB отображает следующую контурную карту -

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

Трехмерные графики в основном отображают поверхность, определенную функцией от двух переменных, g = f (x, y).

Как и раньше, чтобы определить g, мы сначала создаем набор точек (x, y) в области определения функции, используя meshgridкоманда. Далее мы назначаем саму функцию. Наконец, мы используемsurf команда для создания графика поверхности.

Следующий пример демонстрирует концепцию -

пример

Создадим трехмерную карту поверхности для функции g = xe - (x 2 + y 2 )

Создайте файл сценария и введите следующий код -

[x,y] = meshgrid(-2:.2:2);
g = x .* exp(-x.^2 - y.^2);
surf(x, y, g)
print -deps graph.eps

Когда вы запускаете файл, MATLAB отображает следующую трехмерную карту -

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