📜  MATLAB 中的网格曲面图

📅  最后修改于: 2022-05-13 01:55:12.015000             🧑  作者: Mango

MATLAB 中的网格曲面图

Mesh Surface Plot用于在三维空间中描绘 f(X, Y, Z)。 Matlab 允许用户使用 mesh() 方法创建网格曲面图。

mesh() 方法的不同语法是:

  • 网格(X、Y、Z)
  • 网格(Z)
  • 网格(___,C)
  • 网格(___,名称,值)
  • S = 网格()
  • 网格(斧头,____)

网格(X、Y、Z)

  • 它在三维表面上绘制 X、Y、Z。
  • 矩阵 X、Y 沿 xy 平面绘制,并将矩阵 Z 绘制为 xy 平面上方的高度。
  • 如果 size(Z) = [m, n],则 X 的大小应与 Z 或大小为 n 的向量相同。
  • Y 的大小应该与 Z 或大小为 m 的向量相同。

例子:

Matlab
% Define matrix of size 2*10
Z = [1:10;
    1:10];
      
% Define vector Y of size 2
Y = [1 2];
  
% Define vector X of size 10 
X = [1:10];
  
% Plot mesh surface
mesh(X,Y,Z)


Matlab
% Creates a random matrix of size 2*10
Z = randi(2,10);
  
% Plot a mesh surface
mesh(Z)


Matlab
% Creates a meshgrids X and Y of same size
[X,Y] = meshgrid(2:.7:11);
  
% Create matrix Z as same size of X
Z = cos(X)./X;
  
% Create a color matrix
C = X.*Y;
  
% Plotting mesh surface
mesh(X,Y,Z,C)


Matlab
% Create meshgrids X and Y of same size
[X,Y] = meshgrid(4:.2:20);
  
% Create matrix Z
Z = X.*Y - sin(X);
  
% Create mash plot with FaceAlpha and EdgeColor
mesh(X,Y,Z,'FaceAlpha','0.5','EdgeColor','flat')


Matlab
% Creates meshgrids X and Y of same size
[X,Y] = meshgrid(1:.2:3);
  
% Initialize Z as of same size of X
Z = X - Y.*X;
  
% Plot the mesh plot with X,Y,Z of linestyle = '--'
% We can change surface properties of using variable s
s = mesh(X,Y,Z,"LineStyle",'--')


Matlab
% MATLAB code for creates meshgrids
% X and Y of same size
[X,Y] = meshgrid(1:.2:3);
  
% Initialize Z as of same size of X
Z = X - Y.*X;
  
% Plot the mesh plot with X,Y,Z of linestyle = '-' and Facecolor.
s = mesh(X,Y,Z)
s.LineStyle = '-';
s.FaceColor = '[1 0.7 0]'


Matlab
% MATLAB code for mesh(ax,___) %
[X,Y] = meshgrid(-10:.8:4);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
mesh(axes,X,Y,Z)


输出 :



网格(Z)

它通过将列和行索引分别视为 x 和 y 坐标来创建具有矩阵 Z 的网格曲面图。

例子:

MATLAB

% Creates a random matrix of size 2*10
Z = randi(2,10);
  
% Plot a mesh surface
mesh(Z)

输出 :

网格(___,C)

  • 它创建一个网格曲面图,边的指定颜色为 C。
  • C 是一个 m×n×3 的 RGB 数组,其中 Z 是一个大小为 m×n 的矩阵。

例子:

MATLAB



% Creates a meshgrids X and Y of same size
[X,Y] = meshgrid(2:.7:11);
  
% Create matrix Z as same size of X
Z = cos(X)./X;
  
% Create a color matrix
C = X.*Y;
  
% Plotting mesh surface
mesh(X,Y,Z,C)

输出 :

网格(___,名称,值)

  • 它使用指定的名称-值对参数创建网格曲面图。
  • 一些属性是面 Alpha、边缘颜色、线条样式等。

例子:

MATLAB

% Create meshgrids X and Y of same size
[X,Y] = meshgrid(4:.2:20);
  
% Create matrix Z
Z = X.*Y - sin(X);
  
% Create mash plot with FaceAlpha and EdgeColor
mesh(X,Y,Z,'FaceAlpha','0.5','EdgeColor','flat')

输出 :

S = 网格(___)

  • 它创建具有指定变量的网格图并返回网格图的图表表面对象。
  • 即使在使用变量创建图后,您也可以修改网格图。

示例 1:

MATLAB

% Creates meshgrids X and Y of same size
[X,Y] = meshgrid(1:.2:3);
  
% Initialize Z as of same size of X
Z = X - Y.*X;
  
% Plot the mesh plot with X,Y,Z of linestyle = '--'
% We can change surface properties of using variable s
s = mesh(X,Y,Z,"LineStyle",'--')

输出 :



网格图的属性:

示例 2:

MATLAB

% MATLAB code for creates meshgrids
% X and Y of same size
[X,Y] = meshgrid(1:.2:3);
  
% Initialize Z as of same size of X
Z = X - Y.*X;
  
% Plot the mesh plot with X,Y,Z of linestyle = '-' and Facecolor.
s = mesh(X,Y,Z)
s.LineStyle = '-';
s.FaceColor = '[1 0.7 0]'

输出 :

网目(ax,______)

此函数用于指定网格图中的轴而不是当前轴。

MATLAB

% MATLAB code for mesh(ax,___) %
[X,Y] = meshgrid(-10:.8:4);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
mesh(axes,X,Y,Z)

输出: