matplotlib 将轴复制到网格等级库中

vbkedwbf  于 2023-04-07  发布在  其他
关注(0)|答案(1)|浏览(82)

我有一个返回fig, ax对的函数,但是我想把结果放在gridspec的子图中。

fig, ax = draw_football_field(dimensions, size) # this is the output that I want to copy to another subplot

fig = plt.figure(constrained_layout=True)
gs = fig.add_gridspec(18, 9)
ax = fig.add_subplot(gs[3:6, 1:3], zorder=1) #this is the target subplot

你知道怎么做吗?

fwzugrvs

fwzugrvs1#

将在一个Figure上创建的Axes对象传递给Figure对象的另一个示例是很重要的,因为Axes被设计为存在于一个特定的Figure示例上。
我建议您更改draw_footlball_field函数以接受Axes对象。

def draw_football_field(axes, other_args):
    axes.plot(other_args)
    return axes

现在,您可以沿着以下方式执行操作:

fig = plt.figure(constrained_layout=True)
gs = fig.add_gridspec(18, 9)
ax = fig.add_subplot(gs[3:6, 1:3], zorder=1) #this is the target subplot
ax = draw_football_field(ax, other_args) # modify axes instance from 'this' fig

相关问题