File Exchange

image thumbnail


version (78.2 KB) by Michele Giugliano
Extending ERRORBAR, it plots a line within a shaded area, as 'continuous' confidence/error bounds.


Updated 11 Apr 2016

View License

Editor's Note: This file was a File Exchange Pick of the Week

CONFPLOT is a linear plot utility, extending ERRORBAR to represent continuous confidence/error boundaries as a shaded gray area around the plotted line (i.e. taking advantage of the command 'area').
CONFPLOT(X,Y,L,U) plots the graph of vector X vs. vector Y with 'continuous' confidence/error boundaries specified by the vectors L and U. L and U contain the lower and upper error ranges for each point in Y. The vectors X,Y,L and U must all be the same length.

Cite As

Michele Giugliano (2021). confplot (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (21)



much better than errorbar.
Would be cool to be able to specify all the linespecs/parameters than you can using plot

zy z

better than errorbar.

Farhad Sedaghati

Hoi Wong

Great program. I think the last line should be if(nargout>=1) instead of if(nargout>1).

It seems like the program has at most one output argument. It doesn't make much sense to me to specify two output just to get one out.

In fact, MATLAB throws an exception when I tried to specify an output argument. I guess so far everybody does not need the handles :)

Mircea Stoica

Shien Kwun Leong

Thank you.


I'd like to know how I can modify the color of the shade. If I have multiple lines to plot I need different colors for both lines and shades.


It's very useful but there is a conflict with the "legend" command.


Compatible with Laprint.

Nathan Orloff

Hmmm. Well I gave it a five, because it is easy. Now after using it there are a couple major bugs.

1) It does not output any handles, so you cant conveniently change plot details.

2) It does not allow you to pass a color to shade. So you are stuck with the default options. Errorshade2 can do this, but it is not as easy to implement and debug.

Nathan Orloff


I really appreciated this as a starting point, however, like Raymond Reynolds wrote in a comment in 2006, it doesn't do well for overlapping intervals, because you cannot add/control the alpha of the shaded area. An easier, and more useful way to do the plotting is to replace the area with a patch command. This then allows you to directly control the shading and alpha of the area, the only caveat is that you must have bounded ends, so a check to set the first and last points to be the same in the shaded area is needed. I would be happy to send you my code that I edited to do this for you to update this, or (less desirable), I could upload my own version, but I think replacing with patches is a superior method and allows effective viewing of multiple shaded areas.

Kay Thurley

jarek tuszynski

Simple and effective. I seem to be using it a lot.

Maria Byrne

Great! Just what I was looking for. Very tidy way to represent range of values found in noisy data. I used this function and then overlaid errorbar on top.

Raymond Reynolds

Ok, but not sure its very good for multiple plots, which is what i want for comparing overlapping intervals- can't easily control which plots overly others.

Sergio Vallina

confplot.m seems ok in the "default mode" (without defining color and linestyle) but has a bug if we try:

For example,
x = 1:0.1:10;
y = sin(x);
e = std(y)*ones(size(x));

or even it gives an error if we try:


Alberto Redondas

Very useful but dont work if you have NaN on the error variables.

Stefano Fusi

Very useful. I'm not sure it works in a log scale.

Ajit Chaudhari

A nice starting point to figure out how to make the error plots I want

MATLAB Release Compatibility
Created with R12
Compatible with any release
Platform Compatibility
Windows macOS Linux

Inspired: errorshade, errorfill, confplot_t, boundedline.m

Community Treasure Hunt

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

Start Hunting!