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

125 ビュー (過去 30 日間)
HC
HC 2015 年 4 月 23 日
コメント済み: Stefan 2023 年 5 月 18 日
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.

採用された回答

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

その他の回答 (2 件)

Image Analyst
Image Analyst 2015 年 4 月 24 日
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 件のコメント
Image Analyst
Image Analyst 2023 年 5 月 18 日
@Stefan Rather than hijack @HC's question (even though your question is related), could you please start your own new question?
Stefan
Stefan 2023 年 5 月 18 日
sorry have done so.

サインインしてコメントする。


Amy Farris
Amy Farris 2018 年 3 月 13 日
Thank you so much for this answer! It was very helpful to me!!!
  1 件のコメント
Image Analyst
Image Analyst 2018 年 3 月 14 日
You're welcome. If it solved your problem, please mark it as Accepted. Thanks in advance.

サインインしてコメントする。

カテゴリ

Help Center および File Exchange2-D and 3-D Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by