Seaborn 图:调整行和列标签[重复]

问题描述 投票:0回答:1

我有以下情节:

但是,行和列的标签只是连接和重叠。 我可以调整这些标签吗? 理想情况下,应使用换行符而不是管道符。

这里是创建具有相同问题的类似图的示例代码:

import numpy as np
import pandas as pd
import seaborn as sns


df1 = pd.DataFrame(
    np.zeros((6,6)),
    columns=['Epoch', 'Correlation', 'PreprocessingStyle', 'Model', 'Dataset', 'Type'],
)
df1['Model'] = 'a' * 26
df1['PreprocessingStyle'] = 'b' * 26

df2 = pd.DataFrame(
    np.zeros((6,6)),
    columns=['Epoch', 'Correlation', 'PreprocessingStyle', 'Model', 'Dataset', 'Type'],
)
df2['Model'] = 'c' * 26
df2['PreprocessingStyle'] = 'd' * 26


df = pd.concat([df1, df2])

ax = sns.relplot(
    df,
    x='Epoch',
    y='Correlation',
    col='PreprocessingStyle',
    row='Model',
    hue='Dataset',
    style='Type',
    kind='line',
    markers=True,
    dashes=False,
)
python matplotlib seaborn
1个回答
0
投票

假设您想要在列和行描述之间添加换行符,您可以使用

set_titles
自定义标题。

例如,使用

tips
数据集:

import seaborn as sns

tips = sns.load_dataset('tips').rename(columns={'time': 'quite long column name'})

(sns.relplot(data=tips, x="total_bill", y="tip", hue="day",
             col="quite long column name", row="sex",
             height=3, aspect=1, facet_kws={'gridspec_kws': {'hspace': 0.3}})
    .set_titles('{row_var}: {row_name}\n{col_var}: {col_name}')
)

© www.soinside.com 2019 - 2024. All rights reserved.