Hvad er Meshgrid i MATLAB?

MATLAB er en praktisk matematisk softwarepakke til at udføre beregninger lige fra simpel aritmetik og calculus til lineær algebra og signalbehandling. Det kan også plotte data i grafer. MATLABs tusindvis af indbyggede funktioner giver den sin kraft, og et af dets kraftfulde plotteværktøjer er "meshgrid"-funktionen. Funktionen sætter brugerdefinerede gitterlinjer i todimensionelle og tredimensionelle grafer.

MATLAB Plot-standarder

Når du bruger nogen af ​​2-D plottefunktionerne i MATLAB alene uden yderligere instruktioner, vil MATLAB ikke bruge gitterlinjer. Hvis brugeren plotter en graf i 2D-rum, er baggrundsområdet for plottet tomt og hvidt. I 3D-rum vil MATLAB bruge et generisk gitter. Hvis gitterlinjer af nogen art skal vises på en 2-D graf for at gøre dens udseende tydeligere, vil brugeren skal angive, at når man kalder plot-kommandoen eller fra figurvinduet efter MATLAB genererer kurve.

Dagens video

Meshgrid Versus Grid

MATLABs "gitter"-funktion er en enkel måde at slå generiske gitterlinjer til i 2-D, når du kalder et plot. En forprogrammeret algoritme i MATLAB bestemmer, hvor mange gitterlinjer der skal bruges, og hvor langt fra hinanden der skal være mellem dem. I modsætning hertil bestemmer brugeren fuldstændigt de vandrette og lodrette gitterlinjer, der vises på en graf, når man bruger "meshgrid"-funktionen. Derudover er antallet af gitterlinjer og deres afstand det samme for begge akser med "gitter", men med "meshgrid" brugeren kunne kræve, for eksempel tre gitterlinjer vandret og 100 gitterlinjer lodret.

3-D eksempel

Her er et eksempel, der bruger "meshgrid" til et tredimensionelt plot.

[X, Y] = meshgrid(-2:.2:2, -1:0.2:1) Z = X .* exp(-X.^2 - Y.^2); surf (X, Y, Z)

Den første kodelinje fortæller MATLAB at bruge vandrette gitterlinjer fra -2 til 2 med mellemrum på 0,2. Det kræver også lodrette gitterlinjer fra -1 til 1 i trin på tiendedele. Den anden linje fortæller MATLAB, hvordan man beregner "Z"-værdien baseret på "X"- og "Y"-værdierne. Til sidst plotter MATLABs "surf"-funktion en 3D-overflade ophængt i rummet, med meshgrid tilpasset overfladen.

Endnu et 3D-eksempel

Her er en anden måde at bruge "meshgrid" til et tredimensionelt plot.

[X, Y] = meshgrid(-2:.2:2) Z = X .* exp(-X.^2 - Y.^2); surf (X, Y, Z)

Den anden og tredje linje er identisk med den forrige sektion, men i dette tilfælde tog "meshgrid"-funktionen kun ét argument. MATLAB forstår, at modtagelse af kun ét argument faktisk betyder, at brugeren fortæller programmet at bruge det samme antal gitterlinjer og mellemrum for "X"- og "Y"-værdierne. Med denne kode vil overfladen have 21 vandrette gitterlinjer samt 21 lodrette gitterlinjer, alle lige fordelt.