Python Matplotlib:重新排列子批次

Python Matplotlib:重新排列子批次,python,matplotlib,Python,Matplotlib,假设我有一个图fig,它包含两个子图,如示例中的: 我只需执行以下操作即可获得两个轴(左轴为ax1,右轴为ax2): ax1, ax2 = fig.axes 现在,是否可以重新排列子批次?在本例中,要交换它们吗?当然,只要在重新定位它们之后不使用子批次调整(因此紧凑布局) 基本上,只需执行以下操作: import matplotlib.pyplot as plt # Create something similar to your pickled figure...... fig, (ax

假设我有一个图
fig
,它包含两个子图,如示例中的:

我只需执行以下操作即可获得两个轴(左轴为
ax1
,右轴为
ax2
):

ax1, ax2 = fig.axes

现在,是否可以重新排列子批次?在本例中,要交换它们吗?

当然,只要在重新定位它们之后不使用
子批次调整(因此
紧凑布局

基本上,只需执行以下操作:

import matplotlib.pyplot as plt

# Create something similar to your pickled figure......
fig, (ax1, ax2) = plt.subplots(ncols=2)
ax1.plot(range(10), 'r^-')
ax1.set(title='Originally on the left')

ax2.plot(range(10), 'gs-')
ax2.set(title='Originally on the right')

# Now we'll swap their positions after they've been created.
pos1 = ax1.get_position()
ax1.set_position(ax2.get_position())
ax2.set_position(pos1)

plt.show()

为了清楚起见,您正在询问在绘制子地块后如何重新排列子地块(可能左侧在
ax1
上,右侧在
ax2
上)?如果像文档示例中那样生成绘图,为什么不能只执行图(ax2,ax1)=子绘图(1,2)
?实际上我在不同的机器上绘制了绘图,我想更改一些事情,包括子绘图的顺序。我不知道如何使用
plt.subplot()
。文档()说,
创建一个带有一组子图的图形。
,这是我想做的,但是我看不到任何方法可以传递不同的子图
ax1
ax2
,etc@RickyRobinson-子批次为
ax1
ax2
<代码>plt.子图创建1)一个新图形,2)在该图形上创建一系列新的子图。但它不符合我的要求,是吗?