Filling area between more curves

12 visualizaciones (últimos 30 días)
Anezka Koterova
Anezka Koterova el 15 de Sept. de 2019
Comentada: Anezka Koterova el 17 de Sept. de 2019
I am trying to colour the area between more curves (given also in implicite form) with one unbounded and transparent colour. This is example, how it should looks like (except from the red vertical line y=2):
And I have a same problem with planes. Is there any function to fill this "multiarea" or area between more surfaces?
I can only use fill, but it does not create comprehensive and transparent area between more curves.
Thank you.

Respuesta aceptada

Bruno Luong
Bruno Luong el 15 de Sept. de 2019
Change accordingly to suit your need.
tt = linspace(0,2*pi,361);
xy = [2*cos(tt);
4*sin(tt)];
close all
hold on
plot(xy(1,:), xy(2,:), 'k');
plot([-4 4],[0 0], 'k');
plot([-4 0],[-4 4], 'k');
plot([1 1],[-4 4], 'r');
b = [0; 1]'*xy >= 0 &...
[2; -1]'*xy >= [2; -1]'*[-2;0] ;
xyfill = [[-2;0] xy(:,b) [0; 4]];
patch('xdata',xyfill(1,:),'ydata',xyfill(2,:),'facecolor','b','facealpha',0.2, 'linewidth', 2);
axis equal
fill.png
  11 comentarios
Bruno Luong
Bruno Luong el 16 de Sept. de 2019
Possibly, here is a simple example
Anezka Koterova
Anezka Koterova el 17 de Sept. de 2019
Thank You. I will explore that.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by