shadow the area between two curves in a plot

8 Ansichten (letzte 30 Tage)
Patrick Reinwald
Patrick Reinwald am 14 Mai 2020
Beantwortet: Image Analyst am 17 Mai 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])

Akzeptierte Antwort

Star Strider
Star Strider am 14 Mai 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
The patch call creates the shaded confidence intervals.
  2 Kommentare
Patrick Reinwald
Patrick Reinwald am 17 Mai 2020
Thanks for your help
Star Strider
Star Strider am 17 Mai 2020
As always, my pleasure!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Image Analyst
Image Analyst am 17 Mai 2020
With the code sample in the FAQ, you get:

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by