Shade area between two curves

80 views (last 30 days)
Hello,
I'm trying to fill the area between these two curves:
I have tried to use the jbfill.m function and to create a poligon for filling it without succes:
Any idea on how to fix the problem?
Thank you in advance for your help! (ps: I attach the .mat files of x and upper and lower curves)

Accepted Answer

Simon Chan
Simon Chan on 14 Aug 2021
Use function fill
clear; clc;
load('xdata1.mat');
load('up.mat');
load('low.mat');
coord_up = [xdata1,up];
coord_low = [xdata1,low];
coord_combine = [coord_up;flipud(coord_low)];
fill(coord_combine(:,1),coord_combine(:,2),'b')

More Answers (2)

Matt J
Matt J on 14 Aug 2021
Edited: Matt J on 14 Aug 2021
For example,
x=linspace(0,2).';
yhigh=(x-1).^2+1;
ylow=-x+0.5;
h=area([ylow,yhigh]);
set(h(1),'FaceColor','w','EdgeColor','none')

Image Analyst
Image Analyst on 14 Aug 2021
See the FAQ, not only for this very FAQQY question but for lots of other good information too:

Community Treasure Hunt

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

Start Hunting!