1. 程式人生 > >MATLAB繪製等高線和梯度場

MATLAB繪製等高線和梯度場

clear;clc;close all
[X,Y] = meshgrid(-2:.2:2); % 產生網格資料X和Y
Z = X.*exp(-X.^2 - Y.^2); % 計算網格點處曲面上的Z值
[DX,DY] = gradient(Z,0.2,0.2); % 計算曲面上各點處的梯度
figure;
contour(X,Y,Z) ; % 繪製等高線
title('等高線')
 
figure;
quiver(X,Y,DX,DY) ; % 繪製梯度場
title('梯度場')
 
figure;
contour(X,Y,Z) ; % 繪製等高線
hold on
quiver(X,Y,DX,DY) ; % 繪製梯度場
h = get(gca,'Children'); % 獲取當前axes物件的所有子物件的控制代碼
set(h, 'Color','k'); % 設定當前axes物件的所有子物件的顏色為黑色