Contour Plots: (1) contour

示例1:函数的等高线

%创建矩阵X和Y,用于在x-y平面中定义一个网格。
%将矩阵Z定义为该网格上方的高度。然后绘制Z的等高线。
x = linspace(-2*pi,2*pi);
y = linspace(0,4*pi);
[X,Y] = meshgrid(x,y);
Z = sin(X)+cos(Y);
contour(X,Y,Z);

在这里插入图片描述

示例2:二十个层级的等高线

%将Z定义为X和Y的函数。
%调用peaks函数以创建X、Y和Z。然后绘制Z的20个等高线。
[X,Y,Z] = peaks;
contour(X,Y,Z,20);

在这里插入图片描述

示例3:一个层级的等高线

%显示peaks函数在Z=1处的等高线。
[X,Y,Z] = peaks;
v = [1,1]; %要在一个高度(k)绘制等高线,请将levels指定为二元素行向量[k k]
contour(X,Y,Z,v);

在这里插入图片描述

示例4:虚线等高线

%创建peaks函数的等高线图,并指定虚线线型。
[X,Y,Z] = peaks;
contour(X,Y,Z,'--');

在这里插入图片描述

示例5:带标签的等高线

%将Z定义为两个变量X和Y的函数。
%然后创建该函数的等高线图,并通过将ShowText属性设置为'on'来显示标签。
x = -2:0.2:2;
y = -2:0.2:3;
[X,Y] = meshgrid(x,y);
Z = X.*exp(-X.^2-Y.^2);
contour(X,Y,Z,'ShowText','on');

在这里插入图片描述

示例6:具有特定小数位数和单位的标签

%自R2022b开始提供
%创建一个显示标签的等高线图,标签表示为小数点后带一位数字并后跟字母m。
contour(peaks,[-4 0 2],"ShowText",true,"LabelFormat","%0.1f m");

在这里插入图片描述

示例7:不同单位的标签

%自R2022b开始提供
%当需要计算值时,可以指定函数来格式化标签。
%例如,您可以定义一个函数来计算不同单位的标签值。
%在名为mylabelfun.m的程序文件中定义此函数。
%该函数将输入从米转换为英尺,并返回一个字符串向量,其中包含以米为单位的每个值,并用括号括起相应的以英尺为单位的值。
function labels = mylabelfun(vals)
    feetPerMeter = 3.28084;
    feet = round(vals.*feetPerMeter);
    labels = vals + " m (" + feet + " ft)";
    labels(vals == 0) = "0 m";
end

%接下来,创建一个等高线图,并将LabelFormat属性指定为mylabelfun的句柄。
contour(peaks,[-4 0 2],"ShowText",true,"LabelFormat",@mylabelfun);

在这里插入图片描述

示例8:自定义线宽

%创建peaks函数的等高线图。
%通过将LineWidth属性设置为3,使等高线更粗。
Z = peaks;
[M,c] = contour(Z);
c.LineWidth = 3;

在这里插入图片描述

示例9:不连续曲面上的等高线

%在曲面上任何不连续的位置插入NaN值。
%contour函数不会在这些区域中绘制等高线。
%将矩阵Z定义为peaks函数的采样。
%将列26中的所有值替换为NaN值。然后绘制修改后的Z矩阵的等高线。
Z = peaks;
Z(:,26) = NaN;
contour(Z);

在这里插入图片描述

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值