如何并排制作两个地块

新手上路,请多包涵

我在 matplotlib 上找到了以下示例:

 import numpy as np
import matplotlib.pyplot as plt

x1 = np.linspace(0.0, 5.0)
x2 = np.linspace(0.0, 2.0)

y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)
y2 = np.cos(2 * np.pi * x2)

plt.subplot(2, 1, 1)
plt.plot(x1, y1, 'ko-')
plt.title('A tale of 2 subplots')
plt.ylabel('Damped oscillation')

plt.subplot(2, 1, 2)
plt.plot(x2, y2, 'r.-')
plt.xlabel('time (s)')
plt.ylabel('Undamped')

plt.show()

我的问题是:我需要改变什么,才能让情节并排?

原文由 Heißenberg93 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 645
1 个回答

将您的子图设置更改为:

 plt.subplot(1, 2, 1)

...

plt.subplot(1, 2, 2)

subplot 的参数是:行数、列数以及您当前所在的子图。所以 1, 2, 1 表示“1 行 2 列图形:转到第一个子图。”然后 1, 2, 2 表示“1 行 2 列图形:转到第二个子图。”

您当前要求的是 2 行 1 列(即一个在另一个之上)布局。您需要改用 1 行 2 列布局。当你这样做时,结果将是:

并排情节

为了尽量减少子图的重叠,您可能需要加入:

 plt.tight_layout()

演出前。产量:

更整洁的并排情节

原文由 Jonathan Eunice 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题