How do I plot the intersection of two inequalities?

I have these two inequalities and I wanna have something like the graph:
I used this code to get this graph, and rotate the axis to show only the xy-plane, but I wanted to represent this area using only the two inequalities.
[x1,x2] = meshgrid(-10:0.02:10,-10:0.02:10);
z = x2 - 8./x1;
cond1 = x1./5 - x2 >= 0;
cond2 = 16 - (x1-5).^2 - x2.^2 >= 0;
cond = cond1.*cond2; z(cond == 0) = NaN;
mesh(x1, x2, z);

댓글 수: 2

Chen
Chen 2023년 10월 9일
Excuse me, what is sense of the cond = cond1.*cond2; z(cond == 0) = NaN ?
Thanks
NaN values are not plotted.

댓글을 달려면 로그인하십시오.

답변 (2개)

Mathieu NOE
Mathieu NOE 2023년 10월 10일
try this :
[x1,x2] = meshgrid(-10:0.02:10,-10:0.02:10);
z = x2 - 8./x1;
cond1 = x1./5 - x2 >= 0;
cond2 = 16 - (x1-5).^2 - x2.^2 >= 0;
cond = cond1.*cond2; z(cond == 0) = NaN;
surf(x1, x2,0*z, z);
shading interp
view(2)

댓글 수: 1

hello again
do you mind accepting my answer (if it has fullfiled your expectations ) ? tx

댓글을 달려면 로그인하십시오.

Ayush Modi
Ayush Modi 2023년 10월 10일
Hi Gustavo,
As per my understanding, you would like to see the area covered by both the inequalities.
Here is an example showing how you can implement the same:
inq1 = ((1/5)*X) - Y >= 0;
inq2 = 16 - (X-5).^2 - Y.^2 >=0;
% Combine the inequalities
% area = inequality1 & inequality2;
area = inq1 & inq2;
% Create a figure and plot the area
figure;
fill(X(area), Y(area),'b');
Hope this helps!

카테고리

도움말 센터File Exchange에서 Line Plots에 대해 자세히 알아보기

제품

릴리스

R2018a

태그

질문:

2020년 9월 17일

댓글:

2023년 12월 11일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by