如何使用matplotlib为python中的子图设置相同的比例

时间:2015-10-06 17:13:19

标签: matplotlib

我想轻松地在视觉上比较子图。为此,我想为所有子图设置相同的比例。

我的代码运行正常,我可以绘制子图,但是有自己的比例。我想在x轴上保持比例。

2 个答案:

答案 0 :(得分:9)

如果您想要两个具有相同x轴的子图,则可以在创建第二个轴时使用sharex-keyword

import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
ax1 = fig.add_subplot(2, 1, 1)
ax2 = fig.add_subplot(2, 1, 2, sharex=ax1)


t = np.linspace(0, 1, 1000)

ax1.plot(t, np.sin(2 * np.pi * t))
ax2.plot(t, np.cos(2 * np.pi * t))

plt.show()

结果: result

答案 1 :(得分:0)

如果要使用子图:

fig,axs = plt.subplots(2,1, figsize = (10,8), sharex=True)

x = np.random.randn(1000)
x1 = x + 3
sns.histplot(x, ax = axs[0])
sns.histplot(x1, ax = axs[1])
fig.show()

enter image description here