Obszar wypełnienia MATLAB między liniami

Próbuję zrobić coś podobnego do tego, co zostało opisane w tym poście:MATLAB, Wypełnianie obszaru między dwoma zestawami danych, linie na jednej figurze ale wpadłem w blokadę drogi. Próbuję zaciemnić obszar wykresu, który reprezentuje średnią +/- odchylenie standardowe. Definicje zmiennych są nieco skomplikowane, ale sprowadzają się do tego kodu, a po wykreśleniu bez cieniowania otrzymuję zrzut ekranu poniżej:

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--')

Ale kiedy próbuję zaimplementować cieniowanie tylko w dolnej połowie wykresu (między średnią a średniąMinusSTD), dodając poniższy kod, otrzymuję wykres, który wygląda tak:

fill( [x fliplr(x)],  [mean fliplr(meanMinusSTD)], 'y', 'LineStyle','--');

Oczywiście nie zacienia właściwego obszaru wykresu, a nowe bliskie poziome linie są tworzone blisko 0, które zakłócają cieniowanie.

jakieś pomysły? Jestem zakłopotany.

questionAnswers(4)

yourAnswerToTheQuestion