meshgrid函数

1、meshgrid函数用两个坐标轴上的点在平面上画格。

用法:
  [X,Y]=meshgrid(x,y) 
  [X,Y]=meshgrid(x)与[X,Y]=meshgrid(x,x)是等同的 
  [X,Y,Z]=meshgrid(x,y,z)生成三维数组,可用来计算三变量的函数和绘制三维立体图 

 

meshgrid是MATLAB中用于生成网格采样点的函数。在使用MATLAB进行3-D图形绘制方面有着广泛的应用,可用来生成绘制3-D图形所需的网格数据。

meshgrid返回的两个矩阵X、Y必定是行数、列数相等的.矩阵X的行向量由x中的元素决定,Y的列向量由y中的元素决定.

且X、Y的行数都等于输入参数y中元素的总个数,X、Y的列数都等于输入参数x中元素总个数.

  例如例题1: 
  x=-3:1:3;y=-2:1:2; 
  [X,Y]= meshgrid(x,y); 
  这里meshigrid(x,y)的作用是产生一个以向量x为行,向量y为列的矩阵,而x是从-3开始到3,每间隔1记下一个数据,并把这些数据集成矩阵X;同理y则是从-2到2,每间隔1记下一个数据,并集成矩阵Y。即 
  X= 
  -3 -2 -1 0 1 2 3 
  -3 -2 -1 0 1 2 3 
  -3 -2 -1 0 1 2 3 
  -3 -2 -1 0 1 2 3 
  -3 -2 -1 0 1 2 3 
  Y = 
  -2 -2 -2 -2 -2 -2 -2 
  -1 -1 -1 -1 -1 -1 -1 
  0 0 0 0 0 0 0 
  1 1 1 1 1 1 1 
  2 2 2 2 2 2 2

附注:例题中meshgrid(-3:1:3,-2:1:2);因为-3:1:3产生的是含有7个数字的行向量;-2:1:2产生的是含有5个数字的行向量。所以该命令的结果是产生5*7的矩阵(X,Y都是5*7的矩阵;其中X是由第一个含7个元素的行向量产生,Y是由第二个行向量产生)

2.

  [X,Y]=meshgrid(x)与[X,Y]=meshgrid(x,x)是等同的

  [X,Y,Z]=meshgrid(x,y,z)生成三维数组,可用来计算三变量的函数和绘制三维立体图

  相关函数: plot3、mesh、surf、automesh、ndgrid

例如:axis off;
x=-2:.2:2;
y=-1:.2:3;
[xx,yy]=meshgrid(x,y);
zz=100*(yy-xx.^2).^2+(1-xx).^2;
surfc(xx,yy,zz);(三维图)

你可能感兴趣的:(meshgrid函数)