MATLAB中带约束条件的等高线图

4
我是一位完全不了解MATLAB的新手,遇到了一些问题。
我需要制作以下非线性优化问题的等高线图:

enter image description here

为了确定该函数的可行区域。我已经尝试在Mathworks上搜索,但迄今为止还没有找到任何结果。我还有以下示例:
x = -5:0.005:5;
y = -5:0.005:5;
[X,Y] = meshgrid(x,y);
F = (X.^2+Y-11).^2 + (X + Y.^2 - 7).^2;
v = [0:2:10 10:10:100 100:20:200]
[c,h]=contour(X,Y,F,v,'linewidth',2);

colorbar
yc1 = (x+2).^2;
yc2 = (4*x)/10;

hold on
fill(x,yc1,[0.7 0.7 0.7],'facealpha',0.2)
fill([x x(end) x(1)],[yc2 -5 -5],[0.7 0.7 0.7],'facealpha',0.2)
hold off

但这也不是应该呈现的方式(它应该看起来像这样):

enter image description here

2个回答

2

您的代码可以运行,您只需要设置限制条件即可

% your code here

% Set limits
ylim([-5,5])
% Set colours
colormap 'jet'

contour plot


1
你已经到达了目标。只需要调整y轴的限制即可。添加以下行:
ylim([-5 5])

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接