Matlab F(x,y,z) Plotting

23 views (last 30 days)
Ömer Faruk Çetinkaya
Ömer Faruk Çetinkaya on 16 May 2020
Moved: Torsten on 20 Apr 2023
Greetings,
I would like to plot a function i.e. f(x,y,z) = X.^4 - 2*X.^2 + Y.^2 + 2*Y*Z +2*Z.^2 for my backtracking optimization problem. I am able to plot the contour of f(x,y) questions with the code given below. But I couldn't even plot a contour such function. Any help would be appreciated.
xAxis = linspace(-1,2.5,1000);
yAxis = linspace(-1,2.5,1000);
zAxis = linspace(-1,2.5,1000);
[ X,Y ] = meshgrid(xAxis,yAxis);
Z = X.^2 + 5*Y.^2 ;
contour(X,Y,Z,30)
Best Regards,
Ömer

Answers (2)

Ameer Hamza
Ameer Hamza on 16 May 2020
Edited: Ameer Hamza on 16 May 2020
You can use slice() to create a contour plot of your function at specified planes. Try this
xAxis = linspace(-1,2.5,100);
yAxis = linspace(-1,2.5,100);
zAxis = linspace(-1,2.5,100);
[X, Y, Z] = meshgrid(xAxis,yAxis,zAxis);
f = X.^4 - 2*X.^2 + Y.^2 + 2*Y.*Z +2*Z.^2;
x_planes = [1 2];
y_places = 0;
z_planes = [0.5 1];
slice(X, Y, Z, f, x_planes, y_places, z_planes);

Drc
Drc on 20 Apr 2023
y^2/b^2-x^2/a^2=z/c
I want this function in 3D
  1 Comment
Torsten
Torsten on 20 Apr 2023
Moved: Torsten on 20 Apr 2023
Use "fimplicit3".

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!