How to plot elliptic function (x,y,z) in MATLAB

I want to plot a elliptic function (x^2+y^2+z=16) on matlab with limits 0<=x<=2 and 0<=y<=2

Answers (3)

% 0<=x<=2 and 0<=y<=2
x = linspace(0,2,20);
y = linspace(0,2,20);
[X,Y] = meshgrid(x,y);
% x^2+y^2+z=16
Z = 16-X.^2-Y.^2;
surf(X,Y,Z);
grid on
view([60 30]);
xlabel('x')
ylabel('y')
zlabel('z')
Sam Chak
Sam Chak on 26 Mar 2022
Edited: Sam Chak on 26 Mar 2022
Please check if it looks like this:
meshpoints = 41;
Lb = 0; % lower bound
Ub = 2; % upper bound
step = (Ub - Lb)/(meshpoints - 1);
[x, y] = meshgrid(Lb:step:Ub, Lb:step:Ub);
z = 16 - (x.^2 + y.^2); % the surface equation
surf(x, y, z)
view([135 23]);

3 Comments

what is meshpoints and surf function does?
Sam Chak
Sam Chak on 26 Mar 2022
Edited: Sam Chak on 26 Mar 2022
Meshpoints specifies the number of points and meshgrid function creates the number of points between Lower bound and the Upper bound in the x- and y-axes. If the number of mesh points is too small, it will create a very coarse (rough) texture. If the number of mesh points is too big, it will create a very dense (thick) texture. Adjust the number and you will experience it.
The surf function creates the surface plot. You can also use the mesh function, if you want to create the surface that has solid edge colors but no face colors.

Sign in to comment.

Tags

Asked:

on 26 Mar 2022

Answered:

on 23 Sep 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!