代码之家  ›  专栏  ›  技术社区  ›  KBriggs

使用matplotlib和面片在数据顶部绘制矩形

  •  4
  • KBriggs  · 技术社区  · 8 年前

    我试图在中的数据图顶部绘制一个矩形 matplotlib .为此,我有以下代码

    import matplotlib.patches as patches
    import matplotlib.pyplot as pl
    
    ...
    
    fig = pl.figure()
    ax=fig.add_axes([0,0,1,1])
    ax.add_patch(
    patches.Rectangle(
            (776820, 5000),   # (x,y)
            3000,          # width
            3500,          # height
            fill=False
        )
    )
    ax.plot(signal)
    ax.plot(fit)
    ...
    

    但是,当我这样做时,矩形位于数据后面。在绘制实际数据之前或之后添加矩形似乎无关紧要。如何确保矩形是图中最上面的元素?

    1 回复  |  直到 8 年前
        1
  •  6
  •   zinjaai    8 年前

    matplotlib。修补程序。矩形允许关键字参数 佐尔德 默认情况下为1.0。

    在上面选择一个zorder应该会将您的矩形带到图像的前景。

    ax.add_patch(
    patches.Rectangle(
        (776820, 5000),   # (x,y)
        3000,          # width
        3500,          # height
        fill=False,
        zorder=2
        )
    )