我有一个不同的x和y限制的情节:
fig, ax = subplots(ncols=1)
ax.set_xlim([0, 10])
ax.set_ylim([5, 10])
Run Code Online (Sandbox Code Playgroud)
我想x=y在此图中添加一条线,但保持线在轴限制内.
我的第一个天真的尝试就是
ax.plot(ax.get_xlim(), ax.get_xlim())
Run Code Online (Sandbox Code Playgroud)

一个改进的尝试工作,但代码方面非常难看:
ax.plot([max(ax.get_xlim()[0], ax.get_ylim()[0]),
min(ax.get_xlim()[1], ax.get_ylim()[1])],
[max(ax.get_xlim()[0], ax.get_ylim()[0]),
min(ax.get_xlim()[1], ax.get_ylim()[1])])
Run Code Online (Sandbox Code Playgroud)

有更好的方法吗?我在Matplotlib版本的1.2.1Spyder中使用IPython 2.2.5版本1.3.1并mpl.get_backend()返回:
'module://IPython.kernel.zmq.pylab.backend_inline'
Run Code Online (Sandbox Code Playgroud)
Max*_*Noe 10
x = np.linspace(*ax.get_xlim())
ax.plot(x, x)
Run Code Online (Sandbox Code Playgroud)
如果0 <= X <= 1和0 <= Y <= 1,这对我有用:
import matplotlib.pyplot as plt
plt.scatter(X, Y)
plt.plot([0, 1], [0, 1], color = 'black', linewidth = 2)
plt.xlim(-0.05, 1.05)
plt.ylim(-0.05, 1.05)
Run Code Online (Sandbox Code Playgroud)
当然,您可以调整限制。