Plot 3D Graph and make level curves

17 views (last 30 days)
Hi
I have 3 vectors, where:
X is a vector of numbers;
Y is a vector of numbers;
Z is a function that depends on X and Y (i.e)
Z = 4.6597*x.^2 + 2.6897*x.*y - 0.023578*x + 8.1189*y.^2 - 1.9553*y - 1.2304;
I want to plot a 3D curve and I am not succeding. Can someone help me please? Thanks

Accepted Answer

Star Strider
Star Strider on 23 Apr 2021
Edited: Star Strider on 23 Apr 2021
Use the plot3 function.
If you then want it as a 2D plot, use the view function to rotate it.
EDIT — (23 Apr 2021 at 03:17)
I was intending that to use any of the q3D plotting functions, the vectors need to be transformed into matrices first, and then transformed back into vector to use plot3:
X = ...;
Y = ...;
[Xm,Ym] = ndgrid(X,Y);
Zfcn = @(x,y) 4.6597*x.^2 + 2.6897*x.*y - 0.023578*x + 8.1189*y.^2 - 1.9553*y - 1.2304;
Zm = Zfcn(Xm,Ym);
figure
plot3(Xm(:), Ym(:), Zm(:))
grid on
.
  8 Comments

Sign in to comment.

More Answers (2)

Bryan Ambrósio
Bryan Ambrósio on 23 Apr 2021
I have tried plot3, but it doesnt fill my needs entirely

Bryan Ambrósio
Bryan Ambrósio on 23 Apr 2021
in plot3 z cannot be a function

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!