Wat is Meshgrid in MATLAB?

MATLAB standaard plotwaarden

Bij gebruik van een van de MATLAB 2-D grafische functies zelf zonder aanvullende instructies, zal MATLAB geen rasterlijnen gebruiken. Als de gebruiker een grafiek in de 2D-ruimte tekent, is het achtergrondgebied van de grafiek zwart en wit. In een 3D MATLAB-ruimte gebruikt u een generiek raster. Als het nodig is om rasterlijnen van elk type op een 2D-grafiek weer te geven, zodat het uiterlijk duidelijker is, moet de gebruiker het bovenstaande opgeven bij het uitvoeren van de opdracht om te plotten of vanuit het figuurvenster nadat MATLAB de grafiek heeft gegenereerd .

Meshgrid versus Grid

De "raster" -functie van MATLAB is een eenvoudige manier om generieke 2D-rasterlijnen te activeren bij het tekenen van een grafiek. Een algoritme dat vooraf is geprogrammeerd in MATLAB bepaalt het aantal te gebruiken rasterlijnen en hoe ver ze moeten zijn. De gebruiker bepaalt daarentegen volledig de verticale en horizontale rasterlijnen die in een grafiek worden weergegeven met behulp van de functie "meshgrid". Bovendien is het aantal rasterlijnen en hun scheiding hetzelfde voor beide assen met "grid", maar met "meshgrid" kan de gebruiker bijvoorbeeld drie horizontale rasterlijnen en 100 verticale lijnen aanvragen.

3D-voorbeeld

Dit is een voorbeeld van het gebruik van "meshgrid" voor een driedimensionale afbeelding.

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

De eerste coderegel vertelt MATLAB dat het horizontale rasterlijnen moet gebruiken die variëren van -2 tot 2 met 0, 2 spaties. Het vraagt ​​ook om verticale lijnen van -1 tot 1 in stappen van tien. De tweede regel vertelt MATLAB hoe de "Z" -waarde te berekenen op basis van de "X" - en "Y" -waarden. Ten slotte geeft de "surf" -functie van MATLAB een 3D-oppervlak weer dat in de ruimte is opgehangen met het net volgens het oppervlak.

Een ander voorbeeld in 3D

Dit is een andere manier om "meshgrid" te gebruiken voor een driedimensionale afbeelding.

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

De tweede regel en de derde regel zijn identiek aan die van de vorige sectie, maar in dit geval nam de "meshgrid" -functie slechts één argument. MATLAB begrijpt dat het ontvangen van slechts één argument betekent dat de gebruiker het programma vertelt hetzelfde aantal rasterlijnen en spaties te gebruiken voor de waarden "X" en "Y". Met deze code heeft het oppervlak 21 horizontale rasterlijnen en 21 verticale rasterlijnen, allemaal met gelijke spaties.

Interessante Artikelen