shadow in mulitple line plot

I want my figure in matlab too look more alike the one I have attached as a picture. Therefore I where wondering if some could show me how I get shadow on the three lines plot. Wil also attached my plot in matlab.

Risposte (2)

I would recommend reading the documentation for the fill command: https://www.mathworks.com/help/matlab/ref/fill.html
I think it will allow you to do what you want.
Here is a simple example:
x = 0:11;
y = [0 2 3 5 6 7 7 6 5 3 2 0];
fill([x x(1)], [y y(1)], 'blue', 'FaceAlpha', 0.4)
hold on
fill([x x(1)], 0.6*[y y(1)], 'green', 'FaceAlpha', 0.4)

1 Commento

With this method, if the y values don't start and end at 0 (which is the case in the example image), then the fills don't go all the way down to the x-axis:
x = 0:11;
y = [1 2 3 5 6 7 7 6 5 3 2 1];
fill([x x(1)], [y y(1)], 'blue', 'FaceAlpha', 0.4)
hold on
fill([x x(1)], 0.6*[y y(1)], 'green', 'FaceAlpha', 0.4)

Accedi per commentare.

Building on @Les Beckham's answer a little bit (introduce zeros in y to make the patches fill all the way down to the x-axis):
x = 0:11;
y = [1 2 3 5 6 7 7 6 5 3 2 1];
patch(x([1 1:end end]),[0 y 0], 'blue', 'FaceAlpha', 0.4)
hold on
patch(x([1 1:end end]),0.6*[0 y 0], 'green', 'FaceAlpha', 0.4)

1 Commento

@_ Good catch. Thanks.
My example was pretty simplified. Just intended to show what fill can do.

Accedi per commentare.

Categorie

Richiesto:

il 4 Mar 2022

Commentato:

il 4 Mar 2022

Community Treasure Hunt

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

Start Hunting!

Translated by