Seaborn lineplot图例标题设置

详细版本见个人博客:Seaborn lineplot图例标题设置


一、问题描述

下面是我的lineplot()代码,如果此方法用了hue参数同时绘制多个类别图,这时候seaborn会把这个hue的标签当做子标题。

sns.lineplot(x="time", y="value", hue="category", data=df) 

如果我用下面的方法,会产生一个新图例的标题,原来的图例标题并没有被修改:

ax.legend().set_title('title')

二、问题分析

seaborn会错误的把图例的标题当做一个subgroup-title。

seaborn is misusing a legend label as a (subgroup-)title.

三、解决方法

1、修改此子标题方法

legend = ax.legend()  
legend.texts[0].set_text("Whatever else")  

在这里插入图片描述

2、移除此子标题方法

handles, labels = ax.get_legend_handles_labels()
ax.legend(handles=handles[1:], labels=labels[1:])

在这里插入图片描述

3、去掉子标题,加上真正的标题方法

handles, labels = ax.get_legend_handles_labels()
ax.legend(handles=handles[1:], labels=labels[1:], title="Whatever else")

在这里插入图片描述


详细版本见个人博客:Seaborn lineplot图例标题设置

你可能感兴趣的:(数据分析)