python – 如何在matplotlib中获得多个子图?

我对这段代码的工作原理有点困惑:

fig, axes = plt.subplots(nrows=2, ncols=2)
plt.show()

在这种情况下,无花果轴如何工作?它有什么作用?

为什么这不能做同样的事情:

fig = plt.figure()
axes = fig.subplots(nrows=2, ncols=2)

解决方法:

有几种方法可以做到这一点.子图方法创建图形以及随后存储在ax数组中的子图.例如:

import matplotlib.pyplot as plt

x = range(10)
y = range(10)

fig, ax = plt.subplots(nrows=2, ncols=2)

for row in ax:
    for col in row:
        col.plot(x, y)

plt.show()

python  – 如何在matplotlib中获得多个子图?

但是,这样的东西也会起作用,虽然你创建了一个带有子图的图形,然后在它们之上添加,但它并不那么“干净”:

fig = plt.figure()

plt.subplot(2, 2, 1)
plt.plot(x, y)

plt.subplot(2, 2, 2)
plt.plot(x, y)

plt.subplot(2, 2, 3)
plt.plot(x, y)

plt.subplot(2, 2, 4)
plt.plot(x, y)

plt.show()

python  – 如何在matplotlib中获得多个子图?

上一篇:python – Matplotlib:字幕位置错误,图例不可见


下一篇:python-使文本显示在子图图像的前面