Error using mesh (line 71) Z must be a matrix, not a scalar or vector.

5 views (last 30 days)
I am trying to get mesh plot
a=eletxt(:,1);
b=eletxt(:,2);
c=ele(:,5);
a1=table2array(theta(1:5:end,:));
b1=table2array(phi(1:5:end,:));
c1=table2array(phase(1:5:end,:));
u=mesh( theta1,phi1,phase1)
I am getting error saying
Error using mesh (line 71)
Z must be a matrix, not a scalar or vector.
Error in Untitled_phase (line 10)
u=mesh( theta1,phi1,phase1)
  3 Comments
FARHA KHAN
FARHA KHAN on 15 Dec 2022
Oh sorry I have edited that line I think it's not copied properly It's not theta1 phi1 and phase 1 It's a1,b1,c1

Sign in to comment.

Answers (1)

Harshit Saini
Harshit Saini on 19 Dec 2022
As stated in the error, the “mesh” function takes in an input as a matrix. Mesh considers the row and column indices as the x-coordinate and the y-coordinate for the plot.
From the provided code snippet, it seems the parameters inside the “mesh” function are vectors, and not a matrix. I would suggest reshaping the variable accordingly using the following function,
A = 1:10;
B = reshape(A, [5,2])
You can read more about reshaping the arrays here,
  1 Comment
FARHA KHAN
FARHA KHAN on 19 Dec 2022
Thank you for the response
Sir Its a matrix only sir
I have checked it with command ismatrix()

Sign in to comment.

Tags

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!