shadow the area between two curves in a plot
6 views (last 30 days)
Show older comments
Patrick Reinwald
on 14 May 2020
Answered: Image Analyst
on 17 May 2020
in my figure i have plottet 3 curves. the first one is from the data gathered and the other two are the confidence interval. I now want to shadow the area between the confidencial interval (best in grey) but until now i failed miserably. Can someoene help me?
figure
subplot(3,1,1)
plot(average_a_A_plot_cont1,'DisplayName','average_a_A_plot_cont1'); %curve from the data
hold on
plot(ci_durch1(:,:)); %curves from the confidence interval
hold off
title('limited memory; memory length =5, umwsd 5, 25, 45 ');
ylim([0 1])
xlabel('Timesteps')
ylabel('Performance')
grid on
pbaspect([1 1 1])
0 Comments
Accepted Answer
Star Strider
on 14 May 2020
I do not have your data, so I created my own.
You may have to change it slightly to fit your intended application.
Try this:
x = (1:20).'; % Create Independent Variable Vector
y = 2 + 3*x + randn(size(x))*10; % Create Dependent Variable Vector
mdl = fitlm(x, y); % Estimate Parameters
[ypred,ci] = predict(mdl,x); % Calculate Regression & Confidence Intervals
figure
plot(x, y, 'p')
hold on
patch([x; flipud(x)], [ci(:,1); flipud(ci(:,2))], [1 1 1]*0.8, 'EdgeColor','none', 'FaceAlpha',0.2)
plot(x, ypred, '-r')
hold off
grid
2 Comments
More Answers (1)
Image Analyst
on 17 May 2020
This is a FAQ, so see the FAQ: https://matlab.fandom.com/wiki/FAQ#How_do_I_shade_the_region_between_two_curves.3F
With the code sample in the FAQ, you get:

0 Comments
See Also
Categories
Find more on 2-D and 3-D Plots in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!