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) ; % 绘制等高线 15 hold on 16 quiver(X,Y,DX,DY) ; % 绘制梯度场 17 h = get(gca,\'Children\'); % 获取当前axes对象的所有子对象的句柄 18 set(h, \'Color\',\'k\'); % 设置当前axes对象的所有子对象的颜色为黑色