目录
1、MATLAB画三维图meshgrid函数简介
MATLAB中meshgrid函数是用来生成网格的,函数用法是:
[X,Y] = meshgrid(x,y);这种是最常用的一种用法。x和y分别是两个向量。使用示例:
结果:
A中的每个点对应的是x轴的坐标点,B中的每个点对应的是y轴的坐标点,讲的有点抽象,下面画图来说明一下。
绘制出来的坐标是:
坐标所对应的点是:
其实A表示将从第一行开始到最后一行的x轴的坐标值为A矩阵的行,所以按照上图所示A矩阵就是:
B表示将从第一列开始到最后一列的y轴的坐标值为B矩阵的列,按照上图所示B矩阵就是:
所以可以知道meshgrid函数的本质是确定x,y坐标轴上每个位置的值。这个在绘制三维图的时候非常重要,因为三维图其实就是根据x,y平面的每个位置上对应着一个特定的z,然后将它绘制出来,就是所谓的三维图。
根据以上原理简单绘制一个三维图,示例:
%% 学习画三维图形
% meshgrid 函数是用来生成一个网格
clear; clc; close all;
[x,y] = meshgrid(1:0.5:10,1:20); % 生成网格
z = sin(x) + cos(y);
surf(x,y,z); % 画图函数
效果显示:
由图示可以知道,如果x,y的坐标越精确,则绘制出来的三维图越细腻。
示例:
效果显示:
参考链接:https://www.cnblogs.com/zhicungaoyuan-mingzhi/p/12443256.html
2、for循环画三维图
for m=1:4
for n=1:4
N(m,n)=m+n;
end;
end;
[mm,nn] = meshgrid(1:m,1:n);
mesh(mm,nn,N);