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?

 Akzeptierte Antwort

Mischa Kim
Mischa Kim am 5 Mär. 2014
Bearbeitet: Mischa Kim am 5 Mär. 2014

1 Stimme

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 Kommentare

Francesco
Francesco am 5 Mär. 2014
Bearbeitet: Francesco am 5 Mär. 2014
But If a have only a vector How can I do it? My Z variable is a column vector. How can I do?
Francesco
Francesco am 5 Mär. 2014
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?
Walter Roberson
Walter Roberson am 5 Mär. 2014
Like I have told you several times before: use griddata() or trisurfinterp() or scatteredinterpolant()
Francesco
Francesco am 5 Mär. 2014
I don't have trisurfinterp() or scatteredinterpolant() commands on my MATLAB. I have only griddata(). I have to investigate it!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by