Što je Meshgrid u MATLAB-u?

MATLAB je praktičan matematički softverski paket za izvođenje izračuna u rasponu od jednostavne aritmetike i računanja do linearne algebre i obrade signala. Također može iscrtati podatke u grafikonima. Tisuće ugrađenih funkcija MATLAB-a daju mu snagu, a jedan od njegovih moćnih alata za crtanje je funkcija "meshgrid". Funkcija postavlja korisnički definirane linije mreže u dvodimenzionalne i trodimenzionalne grafikone.

MATLAB Plotting Defaults

Kada koristite bilo koju od funkcija 2-D crtanja u MATLAB-u samostalno bez dodatnih uputa, MATLAB neće koristiti linije mreže. Ako korisnik crta graf u 2-D prostoru, pozadinsko područje grafikona je prazno i ​​bijelo. U 3-D prostoru, MATLAB će koristiti generičku mrežu. Ako se linije mreže bilo koje vrste moraju prikazati na 2-D grafikonu kako bi njegov izgled bio jasniji, korisnik mora specificirati da prilikom pozivanja naredbe plot ili iz prozora sa slikom nakon što MATLAB generira graf.

Video dana

Mreža protiv mreže

MATLAB-ova "grid" funkcija je jednostavan način uključivanja generičkih linija mreže u 2-D pri pozivanju dijagrama. Unaprijed programirani algoritam u MATLAB-u određuje koliko će linija mreže koristiti i koliko ih razmaknuti. Nasuprot tome, korisnik u potpunosti određuje vodoravne i okomite linije mreže koje se pojavljuju na grafikonu kada koristi funkciju "meshgrid". Osim toga, broj linija mreže i njihov razmak isti su za obje osi s "mrežom", ali s "meshgrid" korisnik može zahtijevati, na primjer, tri linije mreže vodoravno i 100 linija mreže okomito.

3-D primjer

Evo primjera korištenja "meshgrid" za trodimenzionalni prikaz.

[X, Y] = mreža (-2:.2:2, -1:0.2:1) Z = X .* exp(-X.^2 - Y.^2); surfati (X, Y, Z)

Prvi redak koda govori MATLAB-u da koristi horizontalne linije mreže u rasponu od -2 do 2, s razmacima od 0,2. Također zahtijeva vertikalne linije mreže od -1 do 1 u koracima od desetina. Drugi red govori MATLAB-u kako izračunati "Z" vrijednost na temelju "X" i "Y" vrijednosti. Konačno, MATLAB-ova funkcija "surf" iscrtava 3-D površinu koja je suspendirana u prostoru, s mrežom usklađenom s površinom.

Još jedan 3-D primjer

Evo još jednog načina korištenja "meshgrid" za trodimenzionalni prikaz.

[X, Y] = mreža (-2:.2:2) Z = X .* exp(-X.^2 - Y.^2); surfati (X, Y, Z)

Drugi i treći redak identični su prethodnom odjeljku, ali u ovom slučaju funkcija "meshgrid" je uzela samo jedan argument. MATLAB razumije da primanje samo jednog argumenta zapravo znači da korisnik govori programu da koristi isti broj linija mreže i razmaka za vrijednosti "X" i "Y". S ovim kodom, površina će imati 21 horizontalnu liniju mreže kao i 21 vertikalnu liniju mreže, sve na jednakom razmaku.