How to plot the region corresponding to an inequality?

62 次查看(过去 30 天)
I want to plot create the region plot for the inequality for . In Mathematica this can be done by
RegionPlot[y - x^2 >= 0, {x, -Sqrt[3], Sqrt[3]}, {y, 0, 3}, FrameLabel -> {"x", "y"}]
producing the following plot
How can one produce a similar plot in Matlab? The best I could do was using the spy function as follows
h = 0.01;
[x,y] = meshgrid(-sqrt(3):h:sqrt(3),0:h:3);
e = zeros(size(x));
Z = y-x.^2;
figure(1)
spy(Z >= e);
xlabel('x'), ylabel('y')
Here is another try
clear
h = 0.05;
[x,y] = meshgrid(-sqrt(3):h:sqrt(3),0:h:3);
ineq = y-x.^2 >= 0;
f = double(ineq);
figure(2)
surf(x,y,f);
xlabel('x'), ylabel('y')
view(0,90)
Any ideas? Thank you very much in advance.

采纳的回答

KSSV
KSSV 2022-2-10
You are good to go with second method:
h = 0.01;
[x,y] = meshgrid(-sqrt(3):h:sqrt(3),0:h:3);
% e = zeros(size(x));
Z = y-x.^2;
idx = double(Z>=0) ;
figure(1)
pcolor(x,y,idx)
shading interp
xlabel('x'), ylabel('y')
  3 个评论
KSSV
KSSV 2022-2-10
编辑:KSSV 2022-2-10
h = 0.01;
[x,y] = meshgrid(-sqrt(3):h:sqrt(3),0:h:3);
% e = zeros(size(x));
Z = y-x.^2;
idx = double(Z>=0) ;
figure(1)
% spy(Z >= 0);
% xlabel('x'), ylabel('y')
pcolor(x,y,idx)
shading interp
cmap = [255 255 255;0 0 255]/255 ;
colormap(cmap)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by