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的坐標越精確,則繪制出來的三維圖越細膩。
示例:
效果顯示:
想了解更多繪圖信息,請看下面博文:
三維:
MATLAB三維繪圖(五)高級三維繪圖
MATLAB三維繪圖(四)繪制特殊的三維圖
MATLAB三維繪圖(三)繪制等值線圖
MATLAB三維繪圖(二)使用隱函數作三維圖
MATLAB三維繪圖(一)三維基礎繪圖
二維:
MATLAB二維繪圖(四)其他特殊的二維繪圖函數介紹及用法
MATLAB二維繪圖(三)操作繪圖句柄顯示特定的效果
MATLAB二維繪圖(二)向圖中添加標題,坐標軸,圖標和文字信息
MATLAB二維繪圖(一)使用plot函數進行簡單繪圖
fill填充函數解析及用法示例