matplotlib图中的fig和ax属性

Pre*_*ost 3 python matplotlib

哪个对象包含属性ylim()?在下面的代码(我已导入所需的软件包,并x1和y1阴谋正确)设置y轴的限制,我不得不使用plt.ylim(),为什么会这样?在我自己的脑海中,我会使用ax1.ylim()因为y轴属于ax对象实例.有人可以解释为什么这不正确?

我在这里看到这篇文章:

为什么许多例子在Matplotlib/pyplot/python中使用"fig,ax = plt.subplots()"

这有助于澄清一点,但我仍然不确定.谢谢!

x1 = df_mstr1['datetime'].values
y1 = df_mstr1['tons'].values
fig1, ax1 = plt.subplots()
ax1.stackplot(x1, y1, color='blue')
plt.ylim(0,300)
fig1.savefig('page.pdf', format = 'pdf')
Run Code Online (Sandbox Code Playgroud)

xnx*_*xnx 5

我想到的方法pyplot.ylim()是方便功能(它在技术上不是属性)提供类似MATLAB的功能来设置当前轴的y限制(最近创建或绘制的ax1.set_ylim()那个),而设置y - 您命名的特定轴对象(可能有多个)的限制ax1.

plt.ylim()适用于不需要太多定制的快速绘图.ax1.set_ylim()当您需要跟踪与绘图相关的更多对象时,面向对象越多越好,以便更清楚地自定义它们(并跟踪您自定义的内容).