我想在一个图中包含三个图。该图的子图布局应为二乘二,其中第一个图应占据前两个子图单元(即整个第一行图单元),而其他图应位于单元3和4中第一个图的下方。我知道matlab通过使用像这样的subplot命令可以做到这一点

subplot(2,2,[1,2]) % the plot will span subplots 1 and 2

在pyplot中是否还可能有一个轴占据多个子图?
pyplot.subplot的文档字符串没有讨论。

任何人都有一个简单的解决方案?
提前致谢

最佳答案

您可以简单地执行以下操作:

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(0, 7, 0.01)

plt.subplot(2, 1, 1)
plt.plot(x, np.sin(x))

plt.subplot(2, 2, 3)
plt.plot(x, np.cos(x))

plt.subplot(2, 2, 4)
plt.plot(x, np.sin(x)*np.cos(x))
即,第一个图实际上是上半部分的图(该图仅分为21 = 2个像元),接下来的两个较小的图是在22 = 4个像元的网格中完成的。subplot()的第三个参数是网格内图的位置:
例如,在第二个子图(subplot(2, 2, 3))中,轴将转到2 * 2矩阵的第三部分,即左下角。
python - 如何使用pyplot使轴占据多个子图(Python)-LMLPHP

关于python - 如何使用pyplot使轴占据多个子图(Python),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2265319/

10-12 22:03
查看更多