python - matplotlib 如何计算最小/最大轴值?或者如何在设置限制时自动添加 matplotlib 边距

标签 python matplotlib limit

当我们绘制曲线时,matplotlib 会自动为最小值和最大值添加一些偏移量。 matplotlib 如何计算这个“偏移量”?

例如

plt.plot(range(0,10))
plt.ylim()

给出 y 限制 (-0.45, 9.45)。 而

plt.plot(np.array(range(1,10))/100)
plt.ylim()

给出 y 限制 (0.006, 0.094)。 毫不奇怪,当我设置轴时

plt.plot(range(0,10))
plt.ylim(0,9)
plt.ylim()

我得到 (0.0, 9.0)

我经常想设置限制,但仍然希望限制有一些余量,例如当限制在一条线上时,该线应该很好地显示。

当然,我可以在设置 y 限制时添加一些分数,但这总是需要一些调整。我想知道是否有更聪明的方法来做到这一点。

最佳答案

根据@DavidG 的评论,我们使用边距 plt.margins()ax.margins() 添加正确的数量。

以问题中给出的例子为例:

d = range(0, 10)
plt.plot(d)
ymarg = (max(d) - min(d)) * plt.margins()[1]

plt.ylim(min(d) - ymarg, max(d) + ymarg)
plt.ylim()

返回 (-0.45, 9.45)

关于python - matplotlib 如何计算最小/最大轴值?或者如何在设置限制时自动添加 matplotlib 边距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66103794/

相关文章:

php - 如何随机给mysql查询限制

python - django modelform验证从数据库获取字段如果不是如果表单

python - matplotlib 3D 散点图点的颜色非常浅

MySQL 选择和限制

python - 并排绘制两个 pandas 数据框,每个都采用子图样式

python - 立体太阳图 matplotlib 极坐标图 python

mysql - 如何创建条目有限的 SQL 表?

python - 如何限制没有终端或多处理库的 python 脚本使用的 CPU 数量?

python - 为什么 python Visual Studio 代码中没有显示 pylint 的错误曲线?

python - 我如何在 python 中并行化这段代码(来自 FASTA 的 GC 计算器)?