Surface plot using surf() and mesh grid

12 Ansichten (letzte 30 Tage)
federico nutarelli
federico nutarelli am 20 Aug. 2021
Hi all,
I have two vectors and a matrix that I would like to plot in 3D (as surfaces). I have seen that there is a command called surf() to do so. Now, my variables are two vectors, say k1 and k2 of length (1x741) and a matrix, say omega, of dimension (12x741). When I perform:
[X,Y]=meshgrid(k1,k2)
my new vectors X and Y, are, of course 741x741. My problem is: is there a way to transform the 12x741 matrix in, say, a matrix Z so that I can perform
surf(X,Y,Z)
without dimensionality errors?
Thank you

Akzeptierte Antwort

KSSV
KSSV am 20 Aug. 2021
You can use interp2, imresize to resize your desired matrices into required dimensions.
Let Omega be your matrix of size 12*741.
Z = imresize(Omega,[741 741]) ;
Now you can use surf.
  1 Kommentar
federico nutarelli
federico nutarelli am 20 Aug. 2021
@KSSV thank you for your reply. However, I might have posed the question in the wrong way. In particular I would like 12 surfaces to appear. The matrix Omega is a 12x741 since it contains 12 curves. With imresize the surface plot is just one

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by