Plot 3D Graph and make level curves

7 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 Get Started with Curve Fitting Toolbox 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!