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

3 visualizzazioni (ultimi 30 giorni)
% 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)

Risposte (1)

Voss
Voss il 6 Gen 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)

Categorie

Scopri di più su 2-D and 3-D Plots in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by