在平时绘图中,常会绘制95%置信区间图:
主要使用到patch函数,绘制时需要先对x进行排序,方便绘制区间图,参考代码如下:
x = data(:, 1);
y = data(:, 2);
% 给x进行排序,方便绘制区间图
[X, I] = sort(x);
Y = y(I);
x = X;
y = Y;
[p, s] = polyfit(x, y, 1);
y1 = polyval(p, x);
[yfit, dy] = polyconf(p, x, s, 'predopt', 'curve');
patch([x; flipud(x)], [yfit - dy; flipud(yfit + dy)], [231 231 231] / 255, 'FaceA', 0.95, 'EdgeA', 0);
hold on;
s = scatter(x, y, 'r');
s.LineWidth = 1.25;
plot(x, y1, 'Color', [63 63 63] / 255, 'linewidth', 2.5);
hold on;
欢迎大家批评指正!