axhspan使用坐标设置限制

时间:2014-01-17 10:08:20

标签: python graph colors matplotlib

是否可以使用坐标而不是0-1的值设置axhspan spand x轴的极限?通常命令采用:

axhspan(ymin, ymax, xmin=0, xmax=1, **kwargs)

我知道你可以从坐标计算xminxmax的0-1值,但这似乎是一个漫长的方式呢?

示例

我希望蓝色阴影从0-100,白色100-200,蓝色200-400。

通过转换为0-1的值或仅添加矩形形状而不是使用axhspan(),是唯一的方法吗?

enter image description here

1 个答案:

答案 0 :(得分:6)

matplotlib.patches.Rectanglematplotlib.axes.Axes.add_patch一起使用。

例如:

from pylab import *
from matplotlib.patches import Rectangle

plot(arange(0, 500), arange(0, 500))
gca().add_patch(Rectangle((100, 100), 200, 200)) # (x, y), width, height
show()

注意 Rectangle构造函数的第2,第3个参数是widthheight(不是xy位置)

enter image description here