how to plot a 2D matrix to a 3D graph
Ältere Kommentare anzeigen
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 Kommentare
John Chilleri
am 1 Feb. 2017
Bearbeitet: John Chilleri
am 1 Feb. 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
am 1 Feb. 2017
John Chilleri
am 1 Feb. 2017
Good to hear!
Amit Kumar
am 14 Okt. 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
Antworten (0)
Kategorien
Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!