Creates an attractive shaded error region rather than discrete bars.
43K download
Aggiornato 6 feb 2024

Nota dell'editore: This file was selected as MATLAB Central Pick of the Week


View raacampbell/shadedErrorBar on File Exchange Open in MATLAB Online

shadedErrorBar is a MATLAB function that creates a continuous shaded error region around a line rather than discrete bars. The error region can either be specified explicitly or calculated on the fly based on function handles. The appearance of the plot can be modified via input arguments and/or the handles of the returned plot objects. You will need OpenGL enabled for transparency to work.


Basic example with overlaid points

% Prepare data
yP = sin( linspace(-2*pi,2*pi,length(x)) )*20;
y = bsxfun(@plus,y,yP)+60;

% Make the plot

% Overlay the raw data
hold on

grid on

Overlaying multiple lines

% Prepare data for first line


% Overlay second line
hold on

%Overlay third line
yP = sin( linspace(-2*pi,2*pi,length(x)) )*20;
y = bsxfun(@plus,y,yP)+60;

% Make this line non-transparent
shadedErrorBar(x, y, {@mean,@std}, 'lineprops', '-r','transparent',false,'patchSaturation',0.075)

grid on

Modifying plot properties post-hoc

% Prepare data
yP = sin( linspace(-2*pi,2*pi,length(x)) )*20;
y = bsxfun(@plus,y,yP);

% Plot
s = shadedErrorBar(x, y, {@mean,@std}, 'lineprops', '-r');

% Set face and edge properties
s.mainLine.LineWidth = 5;
s.patch.FaceColor = [0.5,0.25,0.25];

% Overlay data points post-hoc
hold on
plot(s.mainLine.XData, s.mainLine.YData,'or','MarkerFaceColor','w')

grid on


Change Log

15tth November 2022

  • Allow targing to a specific axis

8th Novemeber 2019

  • Merge Octave support from JarlPed

24th November 2017

  • Add patchSaturation as an optional argument.

6th August 2017

  • Parameter/value pairs for input arguments greater than 3.
  • Transparency on by default.
  • No longer changes the renderer.


If you wish to contribute please fork the repo, check out the dev branch and make your changes there, then file a pull request describing what you did.


This code is licensed under the lesser GPL v3. See LICENSE file in the repository.

Cita come

Rob Campbell (2024). raacampbell/shadedErrorBar (https://github.com/raacampbell/shadedErrorBar), GitHub. Recuperato .

Compatibilità della release di MATLAB
Creato con R2015b
Compatibile con qualsiasi release
Compatibilità della piattaforma
Windows macOS Linux
Scopri di più su Line Plots in Help Center e MATLAB Answers

Community Treasure Hunt

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

Start Hunting!

Le versioni che utilizzano il ramo predefinito di GitHub non possono essere scaricate

Versione Pubblicato Note della release

Rename demo files to avoid name clashes. Trivial changes in demo.

typos on readme

Update readme with MATLAB online button and add livescript example.

doc update

Provide "patchSaturation" optional input argument. Update demos.

github for questions
update description

move to GitHub

Verified to work with R2015a

Handles now only returned if the user requests them. Plot elements are re-ordered in a more elegant manner.

Improved error-checking of input args and revised some of the comments.

Correct bug that caused patch area not to be plotted when y contained NaNs and error bars were generated using the function handles approach.

Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.
Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.