Seaborn:如何设置条形边框的线宽或颜色?

Seaborn: how to set bar borders' line width or color?

我正在尝试绘制一个条形图,条形图没有边框。默认情况下,条形图具有黑色细边框。在 Seaborn 的开发版本 (0.6) 中,我可以通过 seaborn.barplot() 将 kwargs (linewidth, edgecolor) 传递给 pyplot.bar(),但在当前版本 (0.5.1) 中这个功能似乎还没有。查看返回的 AxesSubplot 对象,我找不到将线宽设置为零,或者颜色设置为全透明的方法,虽然有很多方法,但我还是希望有办法实现。

import matplotlib.pyplot as plt
import seaborn as sns

fig, ax = plt.subplots()
ax = sns.barplot(data = data, x = 'var1', color = '#007b7f')
fig.tight_layout()
fig.savefig('fig.pdf')

经过多次尝试没有成功,我在这里提出问题,很快我自己找到了解决方案。所以这里是:在绘图之前,可以使用 seaborn.set_context():

设置 patch.linewidth 参数
import seaborn as sns

sns.set_context(rc = {'patch.linewidth': 0.0})
ax = sns.barplot(...)

这也行得通:

fig, ax = plt.subplots()
ax = sns.barplot(data = data, x = 'var1', color = '#007b7f')
plt.setp(ax.patches, linewidth=0)