在Python中使用Seaborn图表移动图例

时间:2017-07-28 15:28:46

标签: python matplotlib legend seaborn

使用此代码,我生成了以下图表:

g = sns.lmplot('credibility', 'percentWatched', data=data, hue = 'gender', markers = [".", "."], x_jitter = True, y_jitter = True, size=5, palette="Set2", scatter_kws={'alpha': 0.2})
g.set(xlabel = 'Credibility Ranking\n ← Low       High  →', ylabel = 'Percent of Video Watched [%]')
g.set(xlim=(1, 7))

new_title = 'Gender'
g._legend.set_title(new_title)
# replace labels
new_labels = ['Male', 'Female']
for t, l in zip(g._legend.texts, new_labels): t.set_text(l)

enter image description here

如您所见,图例与实际图形重叠。如何将图例更多地移到右侧,以便您可以看到完整的图例?

2 个答案:

答案 0 :(得分:2)

Seaborn不擅长处理传说,如果你有这个问题,请关闭seaborn中的图例(legend = False)并尝试通过matplotlib覆盖它。

{{1}}

希望它会有所帮助。

答案 1 :(得分:1)

正如您在创建绘图后设置图例的标题一样,您也可以更改图例的位置。

g._legend.set_bbox_to_anchor((1.13,.8))