How can I do contour plot?

I would like to use this command. I want to to a contour plot of a square figure. X is the vector who represent the x coordinates of the square figure and Y is a vector who represent the y coordinates of the square figure? If a have a square figure what I have to assume for X and Y inputs?
surf(X,Y,Z)
Matlab said that Z must be a matrix and not a vector. What's the matter?

 Accepted Answer

Mischa Kim
Mischa Kim on 5 Mar 2014
Edited: Mischa Kim on 5 Mar 2014
Francesco, that is correct. Z must be a matrix, see for example (from the documentation)
[X,Y] = meshgrid(-8:.5:8); % create 33-by-33 matrices for X and Y
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R; % note, Z is also a 33-by-33
surf(X,Y,Z)
where meshgrid is used to create matrices for X and Y. Based on the grid you can compute/assign values to Z .

4 Comments

Francesco
Francesco on 5 Mar 2014
Edited: Francesco on 5 Mar 2014
But If a have only a vector How can I do it? My Z variable is a column vector. How can I do?
Kim, I have a square figure. Inside this figure there are some points. At each point inside the square it's associated a numeric value. My goal is to create a map of shades where the highest values are of a certain color (red for example) and the lowest values are of a different one. In practice it is what the leterature said "contour plot". So, I have some points inside the square figure and for each points I have the related numeric values. How do I so the contour plot?
Like I have told you several times before: use griddata() or trisurfinterp() or scatteredinterpolant()
I don't have trisurfinterp() or scatteredinterpolant() commands on my MATLAB. I have only griddata(). I have to investigate it!

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!