gpt4 book ai didi

python - Matplotlib:为左侧和右侧设置不同的边距

转载 作者:太空宇宙 更新时间:2023-11-04 02:30:15 25 4
gpt4 key购买 nike

我知道如何在 matplotlib 中增加两边的边距:

import matplotlib.pyplot as plt
import numpy as np

fig, ax = plt.subplots()
ax.set_xmargin(0.3)

ax.plot(range(10), np.random.rand(10))
plt.show()

enter image description here

但是,我只想在右侧留出边距:类似于 ax.set_xmargin(left=0.0, right=0.3)。那可能吗?我无法手动设置轴限制,因为绘图是动画的并且数据在每一步都在变化。

最佳答案

有一个old feature request为此,它仍然是开放的。所以,不,你不能像任何当前版本的 matplotlib 一样独立设置边距。

当然,您可以编写自己的函数来执行您想要的操作。

import matplotlib.pyplot as plt
import numpy as np

fig, ax = plt.subplots()
ax.plot([1,2,3],[1,3,1])

def set_xmargin(ax, left=0.0, right=0.3):
ax.set_xmargin(0)
ax.autoscale_view()
lim = ax.get_xlim()
delta = np.diff(lim)
left = lim[0] - delta*left
right = lim[1] + delta*right
ax.set_xlim(left,right)

set_xmargin(ax, left=0.05, right=0.2)

plt.show()

在动画中使用它需要在每个动画步骤中调用它。这可能会稍微减慢动画速度,但对于大多数应用程序来说应该没问题。

关于python - Matplotlib:为左侧和右侧设置不同的边距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49382105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com