Mi az a Meshgrid a MATLAB-ban?

A MATLAB egy praktikus matematikai szoftvercsomag az egyszerű aritmetikától és a számításoktól a lineáris algebráig és a jelfeldolgozásig terjedő számítások elvégzésére. Az adatokat grafikonokon is ábrázolhatja. A MATLAB több ezer beépített függvénye adja az erejét, és egyik hatékony ábrázolóeszköze a "meshgrid" funkció. A funkció a felhasználó által definiált rácsvonalakat kétdimenziós és háromdimenziós grafikonokba helyezi.

MATLAB ábrázolási alapértékek

Ha a MATLAB bármely 2D-s ábrázolási funkcióját önmagában használja további utasítások nélkül, a MATLAB nem használ rácsvonalakat. Ha a felhasználó egy grafikont kétdimenziós térben ábrázol, a diagram háttérterülete üres és fehér. A 3D térben a MATLAB általános rácsot fog használni. Ha bármilyen rácsvonalnak meg kell jelennie egy 2D-s grafikonon, hogy világosabb legyen a megjelenése, a felhasználó meg kell adnia, hogy a plot parancs meghívásakor vagy az ábraablakból, miután a MATLAB generálja a grafikon.

A nap videója

Meshgrid Versus Grid

A MATLAB "rács" funkciója egy egyszerű módja annak, hogy az általános rácsvonalakat 2D-ben kapcsolja be egy plot hívásakor. A MATLAB előre programozott algoritmusa meghatározza, hogy hány rácsvonalat használjon, és milyen távolságra helyezze el egymástól. Ezzel szemben a felhasználó teljesen meghatározza a grafikonon megjelenő vízszintes és függőleges rácsvonalakat a "hálóháló" funkció használatakor. Ezen túlmenően a rácsvonalak száma és a távolságuk azonos mindkét tengelyen "rács" esetén, de "hálóháló" a felhasználónak szüksége lehet például három vízszintes rácsvonalra és 100 rácsvonalra függőlegesen.

3D példa

Íme egy példa a "meshgrid" használatára háromdimenziós diagramhoz.

[X, Y] = hálóháló (-2:.2:2, -1:0.2:1) Z = X .* exp(-X.^2 - Y.^2); szörfözés (X, Y, Z)

A kód első sora azt mondja a MATLAB-nak, hogy -2 és 2 közötti vízszintes rácsvonalakat használjon, 0,2-es térközökkel. Függőleges rácsvonalakat is igényel -1 és 1 között tizedes lépésekben. A második sor megmondja a MATLAB-nak, hogyan kell kiszámítani a „Z” értéket az „X” és „Y” értékek alapján. Végül a MATLAB "surf" függvénye egy térben felfüggesztett 3D-s felületet ábrázol, a hálóhálóval a felülethez igazítva.

Egy másik 3D-s példa

Itt van egy másik módja a "hálóháló" használatának háromdimenziós telekre.

[X, Y] = hálóháló (-2:.2:2) Z = X .* exp(-X.^2 - Y.^2); szörfözés (X, Y, Z)

A második és a harmadik sor megegyezik az előző szakaszéval, de ebben az esetben a "meshgrid" függvény csak egy argumentumot vett igénybe. A MATLAB megérti, hogy csak egy argumentum fogadása valójában azt jelenti, hogy a felhasználó azt mondja a programnak, hogy ugyanannyi rácssort és térközt használjon az "X" és "Y" értékekhez. Ezzel a kóddal a felületen 21 vízszintes rácsvonal, valamint 21 függőleges rácsvonal lesz, mindegyik egyenlő távolságban.