将水平线延伸到图的边缘

时间:2017-05-21 14:19:03

标签: python matplotlib

在下面的代码中,我获得了一个在"框内延伸的水平线"图(轴对象):

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
fig.patch.set_facecolor('white')
fig.patch.set_alpha(1.0)

plt.axhline(y = 155, clip_on = False)

这给出了下图: enter image description here

有没有办法将这条水平线延伸到整个图/图? (换句话说,经过"框"的情节)。

1 个答案:

答案 0 :(得分:3)

您可以将xmin中的xmaxplt.axhline args设置为0.01.0范围之外。

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
fig.patch.set_facecolor('white')
fig.patch.set_alpha(1.0)

plt.axhline(y = 155, xmin=-.1, xmax=1.1, clip_on = False)

enter image description here

请注意,axhline函数的docstring建议不要将这些值设置在01范围之外:

  

xmin:标量,可选,默认值:0       应该在0和1之间,0是图的最左边,1是       最右边的情节。

     

xmax:标量,可选,默认值:1       应该在0和1之间,0是图的最左边,1是       最右边的情节。

所以,不管你想要什么。它可能在将来引起问题,但至少目前至少可行。 (请注意,我使用的是matplotlib版本1.5.1和2.0.0,两者都有效)