gpt4 book ai didi

python - matplotlib 将刻度与刻度末端对齐

转载 作者:行者123 更新时间:2023-11-30 22:08:39 25 4
gpt4 key购买 nike

如果我在 matplotlib 中绘制某些内容,它会自行选择 y 轴上的间距(放置刻度的位置)。如何告诉轴始终以完整刻度结束而不是在两个刻度之间?

如果它选择每 0.5 进行一次勾号,则最终结果为 2.0,并且不会比没有勾号的 2.0 高一点点。

import matplotlib.pyplot as plt

X = [1,2,3,4,5]
y = [0.1,0.3,2.4,3.9,3.2]

plt.plot(X, y)
plt.show()

最佳答案

默认情况下,轴将自动缩放以扩展数据范围的一定百分比。

enter image description here

因此刻度位置和轴限制完全不相关。这主要为图表内容提供了良好的视觉外观。

但是,您可以决定激活整数自动限制模式,

plt.rcParams['axes.autolimit_mode'] = 'round_numbers'

将限制和刻度关联起来:

enter image description here

此处,在绘制的数据周围创建了大量空白。您可以决定将边距设置为 0 以避免这种情况

plt.rcParams['axes.autolimit_mode'] = 'round_numbers'
plt.rcParams['axes.xmargin'] = 0
plt.rcParams['axes.ymargin'] = 0

enter image description here

请注意,此模式通常会扩展到下一个“好数字”,这可能是也可能不是所需的。例如。如果您让第一个 x 值略小于 1,X = [0.99,2,3,4,5] 限制将扩展到 0.5

enter image description here

还有一个example available在 matplotlib 页面上。

关于python - matplotlib 将刻度与刻度末端对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52116721/

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