我的问题是关于从
displot()
中删除方面标签。我觉得它们应该是绘图对象的属性,但我无法完全挖掘/设置它们。也许我的做法全错了。
我有一个多面直方图。但我计划将其合并为许多图之一,因此最终图像中没有足够的空间来将面细节包含在当前位置,因此我想将它们从子图中删除。
来自seaborn displot 文档的代码:
import seaborn as sns
sns.set_theme(style="darkgrid")
df = sns.load_dataset("penguins")
sns.displot(
df, x="flipper_length_mm", col="species", row="sex",
binwidth=3, height=3, facet_kws=dict(margin_titles=True),
)
这产生了情节:
我想从侧面标题中删除整个
species = ...
。
您可以使用方法
sns.FacetGrid.set_titles
关闭(或更改其标签)列和行标题。
我会警告您不要这样做,除非您设置
col_order
参数以便您知道哪些轴属于每个特定变量。
import seaborn as sns
sns.set_theme(style="darkgrid")
df = sns.load_dataset("penguins")
g = sns.displot(
df, x="flipper_length_mm", col="species", row="sex",
binwidth=3, height=3, facet_kws=dict(margin_titles=True),
)
g.set_titles(col_template="")
# This will also remove the row labels
# g.set_titles(col_template="", row_template="")
不使用
margin_titles
时,使用 g.set_titles(template="")
将删除整个顶部标题。
尝试这样的事情:
import seaborn as sns
sns.set_theme(style="darkgrid")
df = sns.load_dataset("penguins")
s=sns.displot(
df, x="flipper_length_mm", col="species", row="sex",
binwidth=3, height=3, facet_kws=dict(margin_titles=True),
)
s.set_titles("{col_name}");