绘图库;使用不同的轴标签制作不同的子图

Matplotlib; making different subplots with different axis labels

我正在制作一个由 2 个子图组成的图形。子图显示不同的数量,所以我希望轴标签不同。但是,我不知道如何使用 matplotlib 库执行此操作。

代码示例:

import numpy as np
import matplotlib.pyplot as plt

frequency = np.linspace(0, 100, 10)
eta = np.ones(10)

Power = np.linspace(0, 10, 10)
T = np.linspace(0, 10, 10)

fig, ax = plt.subplots(2, 1)
ax[0].plot(frequency, eta)
plt.xlabel('frequency')
ax[1].plot(Power, T)


plt.show()

如图所示,标签显示在第二个 x 轴下方。 我尝试了很多东西,例如 plt.axlabel('frequency', 'Power') 或 ax[0].xlabel('frequency') 或 fig[0]。 xlabel('frequency'),但其中 none 似乎有效。

有人知道怎么做吗?首先十分感谢!

你可以试试这个:

import numpy as np
import matplotlib.pyplot as plt

frequency = np.linspace(0, 100, 10)
eta = np.ones(10)

Power = np.linspace(0, 10, 10)
T = np.linspace(0, 10, 10)

ax1 = plt.subplot(2, 1, 1)
plt.plot(frequency, eta)
plt.xlabel('frequency')

ax2 = plt.subplot(2, 1, 2)
plt.plot(Power, T)
plt.xlabel('label 2')

plt.subplots_adjust(hspace = 0.5)

plt.show()

plt.subplot(2, 1, 1)表示图中的子图是2行1列的形式,当前引用的是第1个子图。同样,plt.subplot(2, 1, 2) 表示正在引用第二个子图。

没有plt.subplots_adjust(hspace = 0.5),第一个子图的标签被第二个子图隐藏。