A matrix/grid from two vectors

45 views (last 30 days)
Dear all,
I am trying to construct a matrix (or a grid) with specific limits on the x and y axes from two vectors:
ns = 20; %number of points on S axis
np = 20; %number of points on P axis
S = linspace(0,1,ns); %S variable
P = linspace(-1,1,np); %P variable
The resulting grid I want has the follwoing shape (just for an illustrative purpose. Surely the number of points would be larger):
I have thought about "meshgrid(S,P)" command, but it won't help as it doesn't let me have the specific P limits that I want, as shown in the photo above.
Any help would be appreicated!
Thanks,
Lama

Accepted Answer

Cris LaPierre
Cris LaPierre on 12 Mar 2021
meshgrid creates the matrices of x and y coordinates you wlil need to plot a mesh/surface plot.
Lookin at the examples on the mesh documentation page for how to use these two functions.
  4 Comments
Cris LaPierre
Cris LaPierre on 12 Mar 2021
ns = 20; %number of points on S axis
np = 20; %number of points on P axis
s = linspace(0,1,ns); %S variable
p = linspace(-1,1,np); %P variable
[S,P] = meshgrid(s,p);
% mesh needs X,Y and Z so create z
Z = zeros(size(S));
mesh(S,P,Z,'Marker','o','MarkerFaceColor','k','EdgeColor',"k")
axis equal tight
view(2)
Lama Hamadeh
Lama Hamadeh on 12 Mar 2021
Great! Many thanks!

Sign in to comment.

More Answers (0)

Categories

Find more on Line Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!