MATLAB Answers

Generating a 3D plot

9 views (last 30 days)
Matlab2010
Matlab2010 on 21 Apr 2015
Answered: Michael Haderlein on 21 Apr 2015
I have two 1D functions
  • Z1 =f(y)
  • Z2 =g(x)
Where Z1, Z2, x and y are Nx1 vectors.
I wish to combine these and plot the resulting 2D function as a 3D plot. Combination is by a weighting function W = [w1 w2], where w1+w2=1.0.
  • Z = h(x, y) = w1.*f(y) + w2. g(x)
Please can someone give me some example code to generate h() and plot it in a 3D graph.
Thank you
  2 Comments
Matlab2010
Matlab2010 on 21 Apr 2015
apologies. updated.

Sign in to comment.

Answers (1)

Michael Haderlein
Michael Haderlein on 21 Apr 2015
I guess with "3D-plot" you mean a surface plot? So it would be like
x=linspace(0,1,50); %I just choose random values here
y=linspace(-1,1,80);
f=y.^2; %also here, I just do something random
g=exp(-x);
W=rand(2,1);
[F,G]=meshgrid(f,g);
Z=W(1)*F+W(2)*G;
surf(F,G,Z) %or
surf(f,g,Z) %or
surf(y,x,Z)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by