A matrix/grid from two vectors

45 vues (au cours des 30 derniers jours)
Lama Hamadeh
Lama Hamadeh le 12 Mar 2021
Commenté : Lama Hamadeh le 12 Mar 2021
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

Réponse acceptée

Cris LaPierre
Cris LaPierre le 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 commentaires
Cris LaPierre
Cris LaPierre le 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 le 12 Mar 2021
Great! Many thanks!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Line Plots 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