# shading plots between one standard deviation

7 views (last 30 days)
SWARNENDU PAL on 14 Dec 2020
Answered: Image Analyst on 17 Dec 2020
I am trying to shade the region between two standard deviation. So i write code like the below :
plot(datenum(monthly_mean.mytime),monthly_mean.PM_2_5+15.6538,datenum(monthly_mean.mytime),monthly_mean.PM_2_5-15.6538)
datetick('x', 'mmm','keeplimits')
xlim([737791 737943])
date_std = [datenum(monthly_mean.mytime),fliplr(datenum(monthly_mean.mytime))];
inbetween = [monthly_mean.PM_2_5-15.6538,fliplr(monthly_mean.PM_2_5+15.6538)];
fill(date_std,inbetween,'g')
hold on
plot(datenum(monthly_mean.mytime),monthly_mean.PM_2_5)
datetick('x', 'mmm','keeplimits')
xlim([737791 737943])
I have used also function 'patch' for doing that part. I have uploaded the figure, so i want to shade the region between the top and bottom curve, but somehow a straightline appears and fill those parts(in the figure). How to overcome this problem? I have taken those parts also from mathworks. Please guide me. Thank you
##### 2 CommentsShowHide 1 older comment
SWARNENDU PAL on 15 Dec 2020
I have submitted data. please guide me. Thank you.

KSSV on 15 Dec 2020
If (x1,y1) and (x1,y2) are tow data, with x1 increasing montonically. I assume they are column arrays. I assumed both of them are of same size (offcourse they x1 common). To fill color beteen these two curves. Follow:
x = [x1 ; flipud(x1)] ;
y = [y1 ; flipud(y2)] ;
patch(x,y,'r')
You need to arrange the data such that, the data form a closed region.
##### 1 CommentShowHide None
SWARNENDU PAL on 17 Dec 2020
it did not worked sir.

Image Analyst on 17 Dec 2020