我正在尝试做一些类似于这篇文章中概述的事情: MATLAB,填充两组数据之间的区域,一个图中的线条, 但遇到了障碍。我试图遮蔽表示平均值 +/- 标准偏差的图形区域。变量定义有点复杂,但归结为这段代码,当绘制没有阴影时,我得到下面的屏幕截图:
x = linspace(0, 100, 101)';
mean = torqueRnormMean(:,1);
meanPlusSTD = torqueRnormMean(:,1) + torqueRnormStd(:,1);
meanMinusSTD = torqueRnormMean(:,1) - torqueRnormStd(:,1);
plot(x, mean, 'k', 'LineWidth', 2)
plot(x, meanPlusSTD, 'k--')
plot(x, meanMinusSTD, 'k--')
但是,当我尝试通过添加下面的代码在图的下半部分(在 mean 和 meanMinusSTD 之间)实现阴影时,我得到一个如下所示的图:
fill( [x fliplr(x)], [mean fliplr(meanMinusSTD)], 'y', 'LineStyle','--');
它显然没有对图形的正确区域进行着色,并且正在创建接近 0 的新近水平线,这些线与阴影混淆。
有什么想法吗?我难住了。