Matlab Error (Z must be a matrix, not a scalar or vector.)?

122 vues (au cours des 30 derniers jours)
GURPREET
GURPREET le 27 Juil 2012
Commenté : Kolenchenko le 5 Mar 2024
Hello
I was trying to plot using the following code but i get this error. Can someone help me please? Thank You
x = -2.5:.1:2.5;
y = -2.5:.1:2.5;
[X,Y] = meshgrid(x,y);
z = 2*sin(x.*y);
mesh(x,y,z)
grid on
hold on
Error using mesh (line 76) Z must be a matrix, not a scalar or vector.

Réponse acceptée

George Papazafeiropoulos
George Papazafeiropoulos le 27 Juil 2012
Modifié(e) : George Papazafeiropoulos le 29 Juil 2012
Is this what you want?
x = -2.5:.1:2.5;
y = -2.5:.1:2.5;
[X,Y] = meshgrid(x,y);
Z = 2*sin(X.*Y);
mesh(X,Y,Z)
grid on
hold on
George Papazafeiropoulos
  3 commentaires
Miro
Miro le 27 Juil 2012
lol you stole my reputation :)
Kolenchenko
Kolenchenko le 5 Mar 2024
THNK U

Connectez-vous pour commenter.

Plus de réponses (2)

Miro
Miro le 27 Juil 2012
Modifié(e) : Miro le 27 Juil 2012
ah you mixed up the capitals i guess. use ur meshgrid for your z like
z = 2*sin(X.*Y);
mesh(X,Y,z)

shahariar Ryehan
shahariar Ryehan le 12 Juin 2022
Modifié(e) : shahariar Ryehan le 12 Juin 2022
I got the same error. Please help.
%variable declare
syms x;
syms t;
%putting the value
a=1;
b=-2;
c=-1;
alpha=1;
y=0;
%vartheta equation
vartheta = @(x, t)((a/alpha)*x.^alpha)+((b/alpha)*y^alpha)+c*t;
%delta
delta=-(2*c)/(b*a^2);
%mesh plot
x = -3:.1:3;
y = -3:.1:3;
[X,Y] = meshgrid(x,t);
%main function
Z=@(vartheta,delta)(-(2*(c^2)*((tanh(sqrt(-delta).*vartheta)).^2))/(b*delta*a^3));
mesh(X,Y,Z)
grid on
hold on
Result:
Error using surf (line 71)
Z must be a matrix, not a scalar or vector.
Error in M3_1_29_3 (line 30)
surf(v, 'edgecolor', 'none')

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by