首页 > 解决方案 > 更改 matplotlib 图例标记中的边缘颜色

问题描述

我已经检查了 matplotlibs 图例的 kwargs,但找不到此选项可用。当我绘制图例时,文本旁边的颜色键是正确的,但是我想删除的键有一个蓝色的 egdecolor。

想知道是否有人知道如何理解这个属性。

cm = matplotlib.colors.ListedColormap(random.sample(sns.palettes.color_palette('Reds').as_hex(), len(sns.palettes.color_palette('Spectral').as_hex())))

con.plot(column='suffix', 
         figsize=(15,15), 
         linewidth=2, 
         legend=True, 
         cmap=cm, 
         legend_kwds={'loc': 'lower center', 
                      'ncol':len(con.columns), 
                      'frameon':False, 
                      'markerscale':3.0,
                     'bbox_to_anchor': (0.5, -0.05)})

plt.axis('off')
plt.show()

上面的代码来自 geopandas plot() 函数。此代码返回下图,我们可以在其中看到蓝色边缘到图例键颜色: 阴谋

标签: pythonmatplotlibgeopandas

解决方案


由于这条线,最新版本不应该发生这种情况。就是这个修复,从 0.5 版开始提供。

如果您坚持使用旧版本并且无法更新到 0.5 或更高版本,您可能会通过 matplotlib rcParams 指定 markeredgewidth。

with plt.rc_context({"lines.markeredgewidth" : 0}):
    # your code here
    df.plot(....)

推荐阅读