How can i get the surface plot of 3 variables

13 views (last 30 days)
obinna
obinna on 16 Oct 2013
Commented: Stephen23 on 3 Apr 2017
i am having a problem getting a 3D plot of 3 variables i am working with. An example of my code and problem is thus:
%the x,y and z matrices below a composed of variables gotten from an experiment
x=a 100 by 1 matrix
Y=a 100 by 1 matrix
z=a 100 by 1 matrix
i want to plot x and y against z; to see the value of z for a corresponding x,y value.
this plot is to be a surface plot. i have read about the mesh and surf function but dont understand how this would be applied here because i have 3 different x,y,z values. I would be glad if a code for this is given to me based on the the x,y,z variables above thanks.

Answers (2)

Jonathan LeSage
Jonathan LeSage on 16 Oct 2013
You could use the plot3 command to visualize the data that you have as a single line in 3d space.
To use the surf or mesh functions, you would need a matrix of Z data (in your case, a 100x100 matrix) to correspond to the x and y data vectors. If you need to visualize the data as a surface plot, you will need to replicate the z data vector so you have a 100x100 matrix.
repeatedZ = repmat(z,1,100)
surf(x,y,repeatedZ)
Hope this helps!

Koyel Sen
Koyel Sen on 3 Apr 2017
Hi all,
I am new to MATLAB .I have been assigned to plot surface graph using X,Y,Z and corresponding concentration values.Can anyone help me with that.I have tried but everywhere it is written in order to plot surf I have to have relationship between Z, and X,Y.which I don't have .All of my values are in 1 by n matrix.I would really appreciate if someone can help me out with it.
  1 Comment
Stephen23
Stephen23 on 3 Apr 2017
@Koyel Sen: ask a new question, and upload some sample data for us to look at.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!