使现有matplotlib图的子图[重复]

p5fdfcr1  于 2023-10-24  发布在  其他
关注(0)|答案(1)|浏览(133)

此问题已在此处有答案

How to add already created figures to a subplot figure(1个答案)
Is it possible to create a subplot from existing figure objects?(1个答案)
Adding subplots to a subplot(4个回答)
19天前关闭。
这篇文章是在19天前编辑并提交审查的。
假设我创建了两个图,每个图都有两个子图。请参见下面的代码。我希望这两个图是另一个图的子图。实现这一点的简单方法是什么?(我对嵌套子图感兴趣。)

from matplotlib import pyplot as plt

x = [1,2,3,4,5,6,7]
y = [1,3,4,2,5,7,6]
z = [5,4,4,2,3,2,1]

fig1, (ax1,ax2) = plt.subplots(2) 
ax1.plot(x,y)
ax2.plot(x,z)

fig2, (ax1,ax2) = plt.subplots(2) 
ax1.plot(x,y)
ax2.plot(x,z)

plt.show()

这个question指向了正确的方向,但是我对如何添加轴感到困惑。我下面的“解决方案”不起作用。

fig = gridspec.GridSpec(2, 1, height_ratios=[1,1])

figure1, (ax1,ax2) = plt.subplots(fig[0])
ax1.plot(x,y)
ax2.plot(x,z)

figure2, (ax1,ax2) = plt.subplots(fig[1])
ax1.plot(x,y)
ax2.plot(x,z)

(如果这是一个愚蠢的问题,我道歉,我刚开始学习Python。

gxwragnw

gxwragnw1#

您可以尝试类似的解决方案。

from matplotlib import pyplot as plt

x = [1,2,3,4,5,6,7]
y = [1,3,4,2,5,7,6]
z = [5,4,4,2,3,2,1]
z1 = [5,4,4,2,3,2,1]

fig, ((ax1, ax2, ax3)) = plt.subplots(1, 3)

ax1.plot(x,y)
ax2.plot(x,z)
ax3.plot(x, z1)
plt.show()

相关问题