lim在函数plt.axis(lim)中的作用是什么?

What is the role of lim in the function plt.axis(lim)?

在我的教科书中,我有以下代码:

model = grid.best_estimator_

plt.scatter(X.ravel(), y)
lim = plt.axis()
y_test = model.fit(X, y).predict(X_test)
plt.plot(X_test.ravel(), y_test, hold=True);
plt.axis(lim);

我了解到 plt.axis() 用于设置轴限制。但是什么意思呢,当我们在不带参数的情况下使用这个方法时,将值赋给lim,然后在plt.axis()中再次使用lim作为参数?

我不明白。

没有参数,plt.axis() returns 图中 x 和 y 方向的电流限制。

在这段代码中,这些限制被保存到一个变量中。所以,这些是散点图看起来不错的限制。

然后调用plt.plot在散点图上绘制一条特定的曲线。由于此曲线也在散点图区域之外绘制,matplotlib 会自动调整其限制以适合完整曲线。但是这种调整会使散点图缩小到一些小区域。

为了纠正这种情况,使用 plt.axis(lim).

再次强制散点图看起来不错的限制

这是一个直观的插图: