how to plot a 2D matrix to a 3D graph
Afficher commentaires plus anciens
given a 2D matrix of size( x * y ) where each element contains a numeric value Z , how to plot the Z value in a 3D graph as a function of both x and y such that Z = matrix(x,y) ?
I have tried using meshgrid to create a 2D array of size(x,y) and defined a new function F = matrix(x,y) and finally used surf(x,y,F) to plot the data but it gave me an empty graph.
4 commentaires
John Chilleri
le 1 Fév 2017
Modifié(e) : John Chilleri
le 1 Fév 2017
If you look into the surf command, you see that given three matrices:
surf(X, Y, Z)
The corresponding elements of X, Y, Z represent the x location, y location, and Z value, respectively, so you would need a 120x160 X, and a 120x160 Y matrix with your desired locations corresponding to your Z values.
Furthermore, the connections are made to the 4 nearest neighbors, which is in a matrix sense, the elements directly above, below, and beside each element.
raed khader
le 1 Fév 2017
John Chilleri
le 1 Fév 2017
Good to hear!
Amit Kumar
le 14 Oct 2020
Dear John,
what is 120x160 X matrix. I have the same problem. For eg. I have a matrix
2 3 2.5 5 7 6
4 8 5.6 7 8 9
8 9 4.7 4 2 8
All these value are of Z. then what should be X and Y matrix
Réponses (0)
Catégories
En savoir plus sur 2-D and 3-D Plots dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!