在matplotlib上自定义colorbar边框颜色

Lio*_*elR 9 border colors matplotlib

如何更改颜色条边框,使它们是白色而不是黑色(外部边框和每个部分之间)?

例如:

x=randint(100, size=(10,10))
cs=contourf(x)
cb=colorbar(cs)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但我想要 :

在此输入图像描述

谢谢

Rut*_*ies 16

编辑:请注意以下MPL 1.3及更高版本的注释.

加:

cb=colorbar(cs, drawedges=True)

cb.outline.set_color('white')
cb.outline.set_linewidth(2)

cb.dividers.set_color('white')
cb.dividers.set_linewidth(2)
Run Code Online (Sandbox Code Playgroud)

  • 也许它是matplotlib(1.4.3)的新版本,但我不得不使用`cb.outline.set_edgecolor('white')`. (6认同)
  • @PiQuer,你是对的。在 MPL 1.3(我认为)中,轮廓从“Line”对象更改为“Polygon”对象。使用“set_color”,会影响 **edge** 和 **facecolor**,但由于“Line”没有 **facecolor**,所以它曾经工作得很好。现在,按照您的建议,具体设置 **edgecolor** 是正确的方法。感谢更新。请参阅:https://github.com/matplotlib/matplotlib/pull/2352 (2认同)

Mar*_*hke 11

正如 PiQuer 提到的:

cb.outline.set_edgecolor('white')
Run Code Online (Sandbox Code Playgroud)

现在工作