Python - matplotlib,pyplot,x和y errorbars错误的方式回合?

时间:2016-10-20 14:36:41

标签: python matplotlib

我对plt.errorbar

的参数顺序感到困惑

我的Python脚本中有以下代码

plt.errorbar(0.0, 1.0, 0.1, 10.0)

我认为参数的顺序是:x_data,y_data,x_error,y_error

这同意:http://matplotlib.org/1.2.1/examples/pylab_examples/errorbar_demo.html

但是,当我运行此代码时,我得到以下输出:

Screenshot

显然,x = 0.0,y = 1.0,x_err = 10.0,y_err = 0.1

所以交换了x_error和y_error参数!

我的问题是为什么?文档错了吗?我很困惑!

1 个答案:

答案 0 :(得分:5)

如果您不使用关键字,则参数的顺序为x, y, yerr, xerr

来自docs

  

呼叫签名:

errorbar(x, y, yerr=None, xerr=None,
     fmt='', ecolor=None, elinewidth=None, capsize=None,
     barsabove=False, lolims=False, uplims=False,
     xlolims=False, xuplims=False, errorevery=1,
     capthick=None)

为避免这种情况,您可以使用关键字来确保为正确的参数提供正确的值;那顺序并不重要。请注意,这是您链接的示例也是如此。

因此,对于您的示例,您可能希望使用:

plt.errorbar(0.0, 1.0, xerr=0.1, yerr=10.0)