MATLAB绘制等⾼线和梯度场
1 clear;clc;close all
2 [X,Y] = meshgrid(-2:.2:2);        % 产⽣⽹格数据X和Y
3 Z = X.*exp(-X.^2 - Y.^2);        % 计算⽹格点处曲⾯上的Z值
4 [DX,DY] = gradient(Z,0.2,0.2);    % 计算曲⾯上各点处的梯度
5 figure;
6 contour(X,Y,Z) ;                  % 绘制等⾼线
7 title('等⾼线')
8
9 figure;
10 quiver(X,Y,DX,DY) ;              % 绘制梯度场
11 title('梯度场')
12
13 figure;
14 contour(X,Y,Z) ;                  % 绘制等⾼线
matlab等高线填充颜
15 hold on
16 quiver(X,Y,DX,DY) ;              % 绘制梯度场
17 h = get(gca,'Children');          % 获取当前axes对象的所有⼦对象的句柄
18set(h, 'Color','k');              % 设置当前axes对象的所有⼦对象的颜⾊为⿊⾊