Borrar filtros
Borrar filtros

I am not able to fill with the color between 2 lines in matlab

3 visualizaciones (últimos 30 días)
Sahil Wani
Sahil Wani el 6 de En. de 2023
Comentada: Voss el 7 de En. de 2023
% I am not able to fill with the colour between 2 lines (y1 and y2) in Matlab. The Matlab code is attached as follows:
close
x = (0:60)';
y1 = 0.5025*exp(0.0471*x); y2=0.2045*exp(0.02*x);
hold all
plot(x,y1)
plot(x,y2)
patch([x fliplr(x)], [y1 fliplr(y2)], 'c','EdgeColor','none', 'FaceAlpha',0.25)

Respuestas (1)

Voss
Voss el 6 de En. de 2023
Since x (and consequently y1 and y2) are column vectors, using fliplr does not have the desired effect. Instead you can use flipud or the more general flip. And use vertical concatentation (i.e., [x; flip(x)]) rather than horizontal concatenation (i.e., [x flip(x)]).
close
x = (0:60)';
y1 = 0.5025*exp(0.0471*x); y2=0.2045*exp(0.02*x);
hold all
plot(x,y1)
plot(x,y2)
patch([x; flip(x)], [y1; flip(y2)], 'c','EdgeColor','none', 'FaceAlpha',0.25)
  1 comentario
Voss
Voss el 7 de En. de 2023
@Sahil WANI: Any questions, please let me know. Otherwise, please "Accept This Answer". Thanks!

Iniciar sesión para comentar.

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by