编辑seaborn legend

编辑seaborn legend,第1张

编辑seaborn legend

如果“legend_out”设置为“True”,则可以使用“g.u legend”`
属性,它是图形的一部分。Seaborn legend是标准的matplotlib
图例对象。因此,您可以更改图例文本,例如:

import seaborn as snstips = sns.load_dataset("tips")g = sns.lmplot(x="total_bill", y="tip", hue="smoker", data=tips, markers=["o", "x"], legend_out = True)# titlenew_title = 'My title'g._legend.set_title(new_title)# replace labelsnew_labels = ['label 1', 'label 2']for t, l in zip(g._legend.texts, new_labels): t.set_text(l)sns.plt.show()

另一种情况是如果将“legend”设置为“False”。你必须定义
轴有一个图例(在下面的示例中,轴编号为0):

import seaborn as snstips = sns.load_dataset("tips")g = sns.lmplot(x="total_bill", y="tip", hue="smoker", data=tips, markers=["o", "x"], legend_out = False)# check axes and find which is have legendleg = g.axes.flat[0].get_legend()new_title = 'My title'leg.set_title(new_title)new_labels = ['label 1', 'label 2']for t, l in zip(leg.texts, new_labels): t.set_text(l)sns.plt.show()

此外,您可以结合两种情况使用以下代码:

import seaborn as snstips = sns.load_dataset("tips")g = sns.lmplot(x="total_bill", y="tip", hue="smoker", data=tips, markers=["o", "x"], legend_out = True)# check axes and find which is have legendfor ax in g.axes.flat:    leg = g.axes.flat[0].get_legend()    if not leg is None: break# or legend may be on a figureif leg is None: leg = g._legend# change legend textsnew_title = 'My title'leg.set_title(new_title)new_labels = ['label 1', 'label 2']for t, l in zip(leg.texts, new_labels): t.set_text(l)sns.plt.show()

This pre works for any seaborn plot which is based on

Grid

class.



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5646690.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存