In some cases matplotlib shows plot with errorbars errorneously when using logarithmic scale. Suppose these data (within pylab for example):
s=[19.0, 20.0, 21.0
Switch to logarithmic scale, but with this command:
plt.yscale('log', nonposy='clip')
Analogously, for the x-axis:
plt.xscale('log', nonposx='clip')
Anyway, if you got a dev version of matplotlib in the last half year, you would have this clipping behavior by default, as discussed in Make nonposy='clip' default for log scale y-axes.