0

我想使用 Matlab 2015a 中的 contourf 函数在(x_min, x_max)(y_min, y_max)范围内显示函数Z = Z(x,y)的值。这是我的代码:

N = 20;
x_min = 20;
x_max = 40;
y_min = 40;
y_max = 80;
x = linspace(x_min, x_max, N);
y = linspace(y_min, y_max, N);
[X,Y] = meshgrid(y,x);
Z = X.*Y;
for i = 1:N
    for j = 1:N
        Z(i, j) = 10*i+j;
    end
end
contourf(Z);
colorbar

这是我得到的情节: 在此处输入图像描述

如何显示 x 和 y 的真实范围(20<=x=<4040<=y=<80)?

4

1 回答 1

4

查看精彩的 MATLAB 文档会发现,您可以为 提供三个参数contourf,即 X、Y 和 Z 值。

N = 20;
x_min = 20;
x_max = 40;
y_min = 40;
y_max = 80;
x = linspace(x_min, x_max, N);
y = linspace(y_min, y_max, N);
[X,Y] = meshgrid(y,x);
Z = X.*Y;
for i = 1:N
    for j = 1:N
        Z(i, j) = 10*i+j;
    end
end
contourf(X,Y,Z);
colorbar

这将为您提供正确标记的刻度线:

轮廓f

于 2016-02-04T13:06:45.450 回答