我有一个图表,其x轴和y轴的范围不同:
fig, ax = subplots(ncols=1)
ax.set_xlim([0, 10])
ax.set_ylim([5, 10])
我想在这个图中添加一条 x=y
的线,但要保持在坐标轴范围内。
我的第一个天真的尝试只是:
ax.plot(ax.get_xlim(), ax.get_xlim())
改进后的尝试已经起作用,但从代码角度来看仍然非常丑陋:
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])])
有没有更好的方法?
我正在使用 IPython 版本 1.2.1
,在 Spyder 2.2.5
中运行 Matplotlib 版本 1.3.1
,mpl.get_backend()
返回:
'module://IPython.kernel.zmq.pylab.backend_inline'
ax.plot(ax.get_ylim(), ax.get_ylim())
? - Matthew Rankinax.plot(ax.get_ylim(), ax.get_ylim())
。我的 mpl 版本存在某种奇怪的问题吗? - LondonRobax.plot(ax.get_xlim(),ax.get_ylim(),clip_on = True,scalex = False,scaley = False)
。 - Joe Kington