在子图中使用现有图

时间:2018-12-23 16:28:40

标签: python matplotlib subplot

我知道原则上该如何处理子图。我正在尝试创建一些只包含一个斧头的图形。随后,我想在同一子图中进一步使用它们,而无需再次创建它们。以下是我所拥有的。

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 2*np.pi, 0.01)
y1 = np.sin(x)
y2 = np.sin(2*x)

plt.clf()
fig1 = plt.figure()
ax1 = fig1.add_subplot(111)
ax1.plot(x,y1)

fig2 = plt.figure()
ax2 = fig2.add_subplot(111)
ax2.plot(x,y2)

现在,我想在新图形中使用ax1ax2。我该如何做而又不指定图?在我的实际代码中,有很多选项可以设置,我想避免这种情况。像

fig3 = plt.figure()
ax1 = fig3.add_subplot(121)
ax2 = fig3.add_subplot(122)

使得上面定义的轴可以在新图形中彼此重用。

编辑:我找到了解决方案。事实证明,实际上不可能使用定义的轴,因为轴的定义包括它是子图还是非图。相反,我沿着these lines寻求帮助:

fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.plot(data)
ax2.plot(data)
fig.show()

这样,轴的指定在很大程度上与定义总体图无关。

0 个答案:

没有答案