在matplotlib中设置errorbars的显示范围suplot

Yot*_*tam 3 python matplotlib

我正在尝试使用matplot lib绘制我的数据.我有3个separetes数据集我想在3个子图中绘制(我使用是我的指导):

plt.figure()

fig, axs = plt.subplots(nrows=3, ncols = 1, sharex=False)
ax1 = axs[0]
ax1.errorbar(X,Y,Err,fmt='o')
ax1.set_xscale('log')
ax1.set_yscale('log')
ax1.set_title('epsilon=1.5, kappa = 2')
plt.show()
Run Code Online (Sandbox Code Playgroud)

但是我得到的x范围从1(或0,我不确定)到100,我想减少它.我尝试了这个,通过添加使用:

ax1.xlim(0.5,13.5)
Run Code Online (Sandbox Code Playgroud)

但是我收到一个错误:

AttributeError:'AxesSubplot'对象没有属性'xlim'

我怎样才能改变范围呢?

til*_*ten 8

轴对象对应的方法是set_xlim(xmin,xmax)。


And*_*lev 6

您可能想要使用Axes.axis(*v, **kwargs):

ax1.axis(xmin=0.5,xmax=13.5)
Run Code Online (Sandbox Code Playgroud)

从文档:

设置/获取轴属性

如果len(*v)== 0,你可以选择性地将xmin,xmax,ymin,ymax作为kwargs传递,以改变那些限制而不改变其他限制.