Filter löschen
Filter löschen

how can I fill between two plot lines from a matrix?

1 Ansicht (letzte 30 Tage)
Elizabeth Lees
Elizabeth Lees am 6 Jan. 2019
Kommentiert: Star Strider am 8 Jan. 2019
Have loaded in my data and wanting the area between the two lines to be filled in. Lines have different values, not just flipped values! Code is below, thanks in advance.
naturalised=load('naturalised.csv')
max=plot(naturalised(:,1),naturalised(:,3))
min=plot(naturalised(:,1),naturalised(:,4))

Akzeptierte Antwort

Star Strider
Star Strider am 6 Jan. 2019
You did not post your data, so we can only guess what ‘naturalised’ is, although we can correctly assume that you are plotting columns of ‘naturalised’.
Try this:
figure
max=plot(naturalised(:,1),naturalised(:,3));
hold on
min=plot(naturalised(:,1),naturalised(:,4));
patch([max.XData, fliplr(min.XData)], [max.YData, fliplr(min.YData)], 'm')
hold off
grid
This worked with test data:
naturalised = [(0:20); zeros(1,21); 1+rand(1, 21); 3+rand(1,21)]';
It will probably work with your data as well.

Weitere Antworten (0)

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by