x = lambda;             %# X range
y1 = bi+b_er;  %# One set of data ranging from 1.5 to 2.5
y2 = bi-b_er;  %# Another set of data ranging from 0.5 to 1.5
baseLine = 0.001;        %# Baseline value for filling under the curves
index = 30:70;         %# Indices of points to fill under



plot(x,y1,'b');                              %# Plot the first line
hold on;                                     %# Add to the plot
h1 = fill(x(index([1 1:end end])),...        %# Plot the first filled polygon
          [baseLine y1(index) baseLine],...
          'b','EdgeColor','none');
plot(x,y2,'w');                              %# Plot the second line
h2 = fill(x(index([1 1:end end])),...        %# Plot the second filled polygon
          [baseLine y2(index) baseLine],...
          'w','EdgeColor','none');
plot(x(index),baseLine.*ones(size(index)),'r');  %# Plot the red line
