python – 在Matplotlib中绘制到特定轴

如何在matplotlib中绘制特定的轴?我创建了自己的对象,它有自己的绘图方法,并采用标准的args和kwargs来调整线条颜色,宽度等,我也希望能够绘制到特定的轴.

我看到有一个axis属性接受一个Axes对象,但无论它仍然只绘制到最后创建的轴.

这是我想要的一个例子

fig, ax = subplots(2, 1)

s = my_object()
t = my_object()

s.plot(axes=ax[0])
t.plot(axes=ax[1])
最佳答案
正如我在评论中所说,请阅读
How can I attach a pyplot function to a figure instance?解释了matllotlib的OO和状态机接口之间的区别.

你应该修改你的绘图功能

def plot(..., ax=None, **kwargs):
    if ax is None:
        ax = gca()
    ax.plot(..., **kwargs)

转载注明原文:python – 在Matplotlib中绘制到特定轴 - 代码日志