2

我正在寻找当前设置的 y 轴限制的快速代码,如下所示

# Set the Y Axis Limits
ax.set_ylim(0,100)

我希望根据我们的数据点将 100 换成可变/可调整的 y 水平,如下所示:

import pandas as pd
import matplotlib.pyplot as plt

s = pd.Series(
[8, 24, 21, 23, 24],
index = ["Your Plan", "Benchmark", "Region", "Industry", "Size"]
)

我想应该是一个快速修复。

4

3 回答 3

2

您必须通过数据系列的最小值和最大值设置 y 轴限制,这些值是 numpy.max 和 numpy.min 的结果:

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np

s = pd.Series(
[8, 24, 21, 23, 24],
index = ["Your Plan", "Benchmark", "Region", "Industry", "Size"]
)

plt.plot(s.values)
ax = plt.gca()
ax.set_ylim(np.min(s),np.max(s))
plt.show()

在此处输入图像描述

于 2017-04-25T02:16:23.290 回答
1

如果添加到代码中,您可以自动缩放轴plt.gca().autoscale_view()。它允许自动调整当前轴限制以适应数据。

于 2017-04-25T09:30:17.417 回答
0

如果您删除或不使用该行ax.set_ylim(0,100),限制将自动调整为数据。

如果您想固定轴的一端但让另一端自动调整,您也可以使用

ax.set_ylim(0,None)
于 2017-04-25T07:53:05.797 回答