function plosny_graf_vse2
% vykresleni prubehu funkce z = -sin(x.^2+y.^2) pro x z intervalu 
% od -1 do 1 a y z intervalu od -1,2 do 1,2
% trirozmerny graf (plosny)a jeho vrstevnice

x=linspace(-1,1,10); % vektor x od -1 do 1
y=linspace(-1.2,1.2,10); % vektor y od -1.2 do 1.2
[X,Y]=meshgrid(x,y); % vytvoreni pomocnych matic X, Y, jejichz prvky obsahuji souradnice bodu v rovine x,y
Z=-sin(X.^2+Y.^2); % vypocet funkcnich hodnot Z (nutno pouzit operaci .^)

subplot(2,3,1); % rozdeleni grafickeho okna na 6 casti (nasledujici graf v 1. casti)
meshc(x,y,Z) % vykresleni prostoroveho plosneho grafu (drateny model)s vrstevnicemi

subplot(2,3,2); % rozdeleni grafickeho okna na 6 casti (nasledujici graf v 2. casti)
surfc(x,y,Z) % vykresleni prostoroveho plosneho grafu (stinovana plocha) s vrstevnicemi

subplot(2,3,3); % rozdeleni grafickeho okna na 6 casti (nasledujici graf v 3. casti)
surf(x,y,Z) % vykresleni prostoroveho plosneho grafu (stinovana plocha)
colorbar; % zobrazi barevnou stupnici
hold on % pridrzeni aktualniho grafu v grafickem okne, moznost nakresleni vice grafu do jednoho grafickeho okna
contour3(x,y,Z,'k') % vykresleni 3D vrstevnic cernou barvou k plosnemu grafu
hold off % vypnuti hold, konec moznosti kreslit vice grafu do jedne casti grafickeho okna

subplot(2,3,4); % rozdeleni grafickeho okna na 6 casti (nasledujici graf v 4. casti)
contour(x,y,Z) % vykresleni vrstevnic 2D
hold on % pridrzeni aktualniho grafu v grafickem okne, moznost nakresleni vice grafu do jednoho grafickeho okna
[GX,GY]=gradient(Z); % vytvoreni pomocnych matic GX,GY pro zobrazeni gradientu funkce Z
quiver(x,y,GX,GY) % vykresleni gradientu funkce Z
hold off % vypnuti hold, konec moznosti kreslit vice grafu do jedne casti grafickeho okna

subplot(2,3,5); % rozdeleni grafickeho okna na 6 casti (nasledujici graf v 5. casti)
surf(x,y,Z) % vykresleni prostoroveho plosneho grafu (stinovana plocha)
axis([-1,1,-1.2,1.2,-1,0.2]) % urceni meritka os
hold on % pridrzeni aktualniho grafu v grafickem okne, moznost nakresleni vice grafu do jednoho grafickeho okna
[NX,NY,NZ]=surfnorm(X,Y,Z); % vytvoreni pomocnych matic NX,NY,NZ pro normaly k plosnemu grafu funkce Z 
quiver3(x,y,Z,NX,NY,NZ) % vykresleni normal k plose grafu jako vektoru (sipek)
hold off % vypnuti hold, konec moznosti kreslit vice grafu do jedne casti grafickeho okna

subplot(2,3,6); % rozdeleni grafickeho okna na 6 casti (nasledujici graf v 6. casti)
contourf(x,y,Z) % vykresleni vrstevnic 2D s vybarvenou plochou
colorbar; % zobrazi barevnou stupnici