How can I plot the region for two inequalities?
Afficher commentaires plus anciens
I'm looking to plot the two inequalities for the formula: abs(x+y+x.^2<3) and abs(y+x+y.^2<3)
with them both being on the same plot. How would I go about doing this please? Or any other similar example is fine.
Thanks in advance
2 commentaires
Walter Roberson
le 11 Sep 2016
You should restore the original question here, and open a new question about fonts.
Rena Berman
le 30 Oct 2016
(Answers dev) restored the original question
Réponse acceptée
Plus de réponses (2)
Image Analyst
le 29 Juil 2016
You could do this:
r = -5:0.01:5; % plotting range from -5 to 5
[x, y] = meshgrid(r); % Get 2-D mesh for x and y based on r
condition1 = x+y+x.^2 < 3;
condition2 = y+x+y.^2 < 3;
output = ones(length(r)); % Initialize to 1
output(~(condition1 & condition2)) = 0; % Zero out coordinates not meeting conditions.
imshow(output, 'xdata', r, 'ydata', r); % Display
axis on;
2 commentaires
Ming Zhen Ellis Tiew
le 5 Oct 2020

Good afternoon, I was wonder is that possible to let the y-axis start form -5 to 5 (because the picture is 5 to -5)? Thank you!
Image Analyst
le 5 Oct 2020
Try
axis ij;
after you've called imshow().
Anna
le 20 Nov 2017
2 votes
Is it possible to draw the region with a different color than black?
1 commentaire
Ayka
le 14 Déc 2022
There are various ways. The most directy way is to construct the third dimension as the RGB color space and multiply the output by different values as the RGB value. For example, if you want to color the white center area to RGB(64,128,192), you can manipulate as
l = length(r);
colored_output = zeros(l,l,3);
colored_output(:,:,1) = output * 64; % 0 remains 0, 1 is amplified to 64
colored_output(:,:,2) = output * 128;
colored_output(:,:,3) = output * 192;
colored_output = uint8(colored_output); % Convert double to uint8 values
imshow(colored_output, 'xdata', r, 'ydata', r);
axis on
If you want to color the surrounding black area, you can just add values to the zero values like
output1 = output;
output1(output1 == 0) = 64;
colored_output(:,:,1) = output1;
Catégories
En savoir plus sur Discrete Data Plots dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
