我想把所有的子图向右移动一点,这样x轴上的零点之前就有更多的空间。margins
会导致对称的间距。我该怎么做呢?
以下是MWE:
import matplotlib.pyplot as plt
x = [0, 1, 2, 3]
y = [1, 3, 4, 2]
fig, ax = plt.subplots(2,sharex=True)
ax[0].plot(x, y)
ax[1].plot(x, y)
ax[0].margins(0.3)
ax[1].margins(0.3)
plt.show()
2条答案
按热度按时间fhity93d1#
当你说更多的空间,你是指更多的空间在图本身或图和边界之间?
如果你的意思是在绘图本身,你可以只手动设置x轴(虽然我不知道这是否正是你想要的。
由于您正在设置
sharex=True
,因此不需要为ax[1]
指定。此外,如果您有更大范围的数据点,并希望更容易地设置xtick,您可以执行以下操作:
yws3nbqq2#
margins方法改变了the padding on the limit of your axes by scaling。如果你想为你的极限值指定一个特定的值,这个值将给予你正确的不对称程度,你可以使用(例如)