Filter löschen
Filter löschen

What is the best way to fill the areas between lines in a graph?

56 Ansichten (letzte 30 Tage)
HC
HC am 23 Apr. 2015
Kommentiert: Stefan am 18 Mai 2023
I have to plot a the wave patterns in a nozzle and I want to highlight the changes with filling the areas between the lines with color but I can't find a way to do this.

Akzeptierte Antwort

Image Analyst
Image Analyst am 23 Apr. 2015
How about using patch() or fill()? Or you can use area() if you plot the top curve first and they don't overlap any.

Weitere Antworten (2)

Image Analyst
Image Analyst am 24 Apr. 2015
HC, I haven't heard from you so I guess you must be having trouble. Here is a demo:
curve1 = 10 + randi(2, 1, 20);
curve2 = 1 + randi(2, 1, 20);
% Find area coordinates.
inBetweenRegionX = [1:length(curve1), length(curve2):-1:1]
inBetweenRegionY = [curve1, fliplr(curve2)];
% Display the area first so it will be in the background.
fill(inBetweenRegionX, inBetweenRegionY, 'g');
hold on;
% Now plot the curves and markers on top of the area.
plot(curve1, 'rd-', 'LineWidth', 3);
plot(curve2, 'bs-', 'LineWidth', 3);
grid on;
ylim([0,13]);
If this meets your needs, please mark it as Accepted. Thanks in advance.
  5 Kommentare
Image Analyst
Image Analyst am 18 Mai 2023
@Stefan Rather than hijack @HC's question (even though your question is related), could you please start your own new question?

Melden Sie sich an, um zu kommentieren.


Amy Farris
Amy Farris am 13 Mär. 2018
Thank you so much for this answer! It was very helpful to me!!!
  1 Kommentar
Image Analyst
Image Analyst am 14 Mär. 2018
You're welcome. If it solved your problem, please mark it as Accepted. Thanks in advance.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by