# Generating a 3D plot

4 views (last 30 days)
Matlab2010 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 CommentsShowHide 1 older comment
Matlab2010 on 21 Apr 2015
apologies. updated.

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)

### Categories

Find more on Line Plots in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by