详细版本见个人博客: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图例标题设置
本文探讨了在使用Seaborn的lineplot时遇到的问题,即当使用hue参数绘制多类别图表时,图例标题被误用为子标题。文章分析了这个问题,并提供了三种解决方案:1) 修改子标题;2) 移除子标题;3) 去掉子标题并添加真正标题。详细内容请参阅作者的个人博客。
1944

被折叠的 条评论
为什么被折叠?



