如何在不扩展轴限制的情况下绘图?

sha*_*ker 5 matplotlib

我试图在不扩展或修改其限制的情况下绘制现有轴。

例如:

import numpy as np
import matplotlib.pyplot as plt

xy = np.random.randn(100, 2)

plt.scatter(xy[:,0], xy[:,1])
Run Code Online (Sandbox Code Playgroud)

制作具有良好拟合轴限制的精细绘图。

但是,当我尝试在它上面画一条线时:

xlim = plt.gca().get_xlim()
plt.plot(xlim, xlim, 'k--')
Run Code Online (Sandbox Code Playgroud)

轴限制被扩展,大概是为了在新数据周围创建填充。

如何在没有此填充的情况下画一条线?

Imp*_*est 11

设置plt.autoscale(False)可防止自动缩放发生。

import numpy as np; np.random.seed(42)
import matplotlib.pyplot as plt

xy = np.random.randn(100, 2)
# By default plots are autoscaled. 
plt.scatter(xy[:,0], xy[:,1])

#Turn autoscaling off
plt.autoscale(False)
xlim = plt.gca().get_xlim()
plt.plot(xlim, xlim, 'k--')

plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述