在Lmplot的子图上更改标题

时间:2018-04-29 14:34:07

标签: seaborn

lm = sns.lmplot(x='early_mean_zscores', y='late_mean_zscores', col='cat', data=combo)
fig = lm.fig
fig.suptitle("Improvement from Early to Late assignments")
a1 = fig.axes[1]
a1.title("adsadas")

我想设置手工生成的子图的标题,即不是基于col ='cat'。这段代码以及我尝试的许多排列似乎都不起作用。

我不明白图表修复和显示的时间。它是在第一行,lm = ...在这种情况下,我不能,追溯性地改变标题也就不足为奇了。

我可以在修复代码时使用一些帮助,并澄清错误的顺序和理论。

2 个答案:

答案 0 :(得分:2)

设置标题的命令是ax.set_title()。使用它,代码应该按预期工作。

一个最小的例子:

import matplotlib.pyplot as plt
import seaborn as sns
tips = sns.load_dataset("tips")

lm = sns.lmplot(x="total_bill", y="tip", col="smoker", data=tips)
fig = lm.fig
fig.suptitle("Custom Super Title")
a1 = fig.axes[1]
a1.set_title("Custom Title")

plt.show()

enter image description here

答案 1 :(得分:0)

根据需要,可以使用:

lm = sns.lmplot(x="total_bill", y="tip", col="smoker", data=tips).set_titles("{col_name}") # {col_name} is special parameter of actual column name