Що таке Meshgrid в MATLAB?

MATLAB — це зручний математичний пакет програм для виконання обчислень, починаючи від простих арифметичних і обчислювальних обчислень до лінійної алгебри та обробки сигналів. Він також може відображати дані в графіках. Тисячі вбудованих функцій MATLAB надають йому потужності, і одним з його потужних інструментів для створення графіків є функція "meshgrid". Функція поміщає визначені користувачем лінії сітки у двовимірні та тривимірні графіки.

MATLAB Графіка за замовчуванням

При використанні будь-якої з функцій 2-D побудови в MATLAB самостійно без додаткових інструкцій, MATLAB не використовуватиме лінії сітки. Якщо користувач будує графік у двовимірному просторі, фонова область графіка буде порожньою і білою. У тривимірному просторі MATLAB використовуватиме загальну сітку. Якщо будь-які лінії сітки повинні відображатися на 2-D графіку, щоб зробити його вигляд більш чітким, користувач необхідно вказати, що під час виклику команди plot або з вікна малюнка після того, як MATLAB генерує графік.

Відео дня

Meshgrid проти Grid

Функція "сітка" MATLAB - це простий спосіб увімкнути загальні лінії сітки в 2-D під час виклику графіка. Попередньо запрограмований алгоритм в MATLAB визначає, скільки ліній сітки використовувати і на якій відстані один від одного розмістити їх. На відміну від цього, користувач повністю визначає горизонтальні та вертикальні лінії сітки, які з’являються на графіку під час використання функції «meshgrid». Крім того, кількість ліній сітки та їх відстань однакові для обох осей із «сіткою», але з "meshgrid" користувач може вимагати, наприклад, три лінії сітки по горизонталі та 100 ліній сітки вертикально.

3-D приклад

Ось приклад використання "meshgrid" для тривимірного графіка.

[X, Y] = meshgrid(-2:.2:2, -1:0.2:1) Z = X .* exp(-X.^2 - Y.^2); серфінг (X, Y, Z)

Перший рядок коду вказує MATLAB використовувати горизонтальні лінії сітки в діапазоні від -2 до 2 з інтервалами 0,2. Для цього також потрібні вертикальні лінії сітки від -1 до 1 з кроком десятих. Другий рядок розповідає MATLAB, як обчислити значення "Z" на основі значень "X" і "Y". Нарешті, функція «surf» MATLAB малює тривимірну поверхню, підвішену в просторі, з сіткою, що відповідає поверхні.

Ще один 3-D приклад

Ось ще один спосіб використання «сітки» для тривимірного графіка.

[X, Y] = meshgrid(-2:.2:2) Z = X .* exp(-X.^2 - Y.^2); серфінг (X, Y, Z)

Другий і третій рядки ідентичні попередньому розділу, але в цьому випадку функція "meshgrid" брала лише один аргумент. MATLAB розуміє, що отримання лише одного аргументу насправді означає, що користувач наказує програмі використовувати однакову кількість ліній сітки та інтервалів для значень «X» і «Y». За допомогою цього коду поверхня матиме 21 горизонтальну лінію сітки, а також 21 вертикальну лінію сітки, усі розташовані на однаковому відстані.