Z must be a matrix, not a scalar or vector.

6 visualizzazioni (ultimi 30 giorni)
Wayne Y Chan
Wayne Y Chan il 3 Dic 2022
Commentato: Voss il 3 Dic 2022
t=0:30
x=(1+0.25.*cos(45.*t)).*cos(t)
y=(1+0.25.*cos(45.*t)).*sin(t)
[X,Y] = meshgrid(x,y)
Z=t+2.*sin(45.*t)
surf(X,Y,Z)
not sure why it keep told me the "Z must be a matrix, not a scalar or vector."
Thanks for the help!!
  1 Commento
Voss
Voss il 3 Dic 2022
Maybe you intend to make a line in 3D rather than a surface?
t = 0:30;
x = (1+0.25.*cos(45.*t)).*cos(t);
y = (1+0.25.*cos(45.*t)).*sin(t);
z = t+2.*sin(45.*t);
plot3(x,y,z)

Accedi per commentare.

Risposte (2)

Eric Delgado
Eric Delgado il 3 Dic 2022
You have have a grid created by meshgrid, so you need a matrix to fill this grid. Not a vector...
It is what it is! :)
t=0:30;
x=(1+0.25.*cos(45.*t)).*cos(t);
y=(1+0.25.*cos(45.*t)).*sin(t);
[X,Y] = meshgrid(x,y);
Z = randn(size(X));
surf(X,Y,Z)

VBBV
VBBV il 3 Dic 2022
Modificato: VBBV il 3 Dic 2022
t=0:30 % a vector
t = 1×31
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
x=(1+0.25.*cosd(45.*t)).*cosd(t);
y=(1+0.25.*cosd(45.*t)).*sind(t);
[X,Y] = meshgrid(x,y) % X and Y matrices
X = 31×31
1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200 1.2500 1.1766 0.9994 0.8221 0.7482 0.8201 0.9945 1.1680 1.2378 1.1623 0.9848 0.8081 0.7336 0.8021 0.9703 1.1367 1.2016 1.1254 0.9511 0.7784 0.7048 0.7685 0.9272 1.0832 1.1419 1.0665 0.8988 0.7335 0.6622 0.7200
Y = 31×31
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0205 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0349 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0431 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0523 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.0717 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1045 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1434 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1740 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841 0.1841
Z=X+2.*sin(45.*Y); % do you mean this ?
surf(X,Y,Z);
shading interp

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by