Azzera filtri
Azzera filtri

extract column from 3D meshgrid and griddata matrices

2 visualizzazioni (ultimi 30 giorni)
Hello,
I have a 3D meshgrid and griddata interpolation like this:
x = 0;
y = 0;
z = min(zp):dz:max(zp);
[X,Y,Z] = meshgrid(x,y,z);
u_int = griddata(xp,yp,zp,u,X,Y,Z);
Then I need to plot u_int with respect to Z:
plot(Z,u_int)
but the code gets the error:
Error using plot
Data cannot have more than 2 dimensions.
In fact Z and u_int are 3D matrices.
size(Z)
gives
ans =
1 1 201
When I try to extract the third colum with:
ZZ = (1,1,:)
I still get a 3D matrix.
How can I transform this 3D matrix into a vector extracting the thid dimension?

Risposta accettata

Walter Roberson
Walter Roberson il 4 Ott 2023
See squeeze
But more likely you would just use
plot(Z(:), u_int(:))
for this very odd case where your x and y are scalars.

Più risposte (1)

Antonella Longo
Antonella Longo il 4 Ott 2023
Sorry, I found the answer.
The reshape function has to be used.

Community Treasure Hunt

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

Start Hunting!

Translated by