【问题标题】:How to change fontsize of only x or y labels in seaborn pairplot?如何更改 seaborn pairplot 中仅 x 或 y 标签的字体大小?
【发布时间】:2021-12-09 06:04:59
【问题描述】:

我使用示例代码来制作 seaborn 的配对图:

import seaborn as sns
penguins = sns.load_dataset("penguins")
sns.pairplot(penguins, corner=True)

我只想更改 x 和 y 标签的字体大小(不是 xticks / yticks)。我知道sns.set(font_scale=k),但它会影响所有文本(x-y 标签、x-y 刻度)。但是,我只想更改 x-y 标签的字体大小。

如果你有任何想法。请告诉我。

【问题讨论】:

    标签: python seaborn font-size


    【解决方案1】:

    您可以使用seaborn.plotting_context,如下所示:

    (作为您在评论中的问题如果您在此之后像下面这样写,修改后的值将重置并恢复为默认值)

    import seaborn as sns
    
    penguins = sns.load_dataset("penguins")
    with sns.plotting_context(rc={"axes.labelsize":20}):
        sns.pairplot(penguins, corner=True)
    

    seaborn.plotting_context

    参数:

    rcdict,可选 用于覆盖预设 seaborn 上下文字典中的值的参数映射。这只会更新被视为上下文定义一部分的参数。

    使用rc dict,您可以更改以下每个样式

    {'axes.linewidth': 1.875,
     'grid.linewidth': 1.5,
     'lines.linewidth': 2.25,
     'lines.markersize': 9.0,
     'patch.linewidth': 1.5,
     'xtick.major.width': 1.875,
     'ytick.major.width': 1.875,
     'xtick.minor.width': 1.5,
     'ytick.minor.width': 1.5,
     'xtick.major.size': 9.0,
     'ytick.major.size': 9.0,
     'xtick.minor.size': 6.0,
     'ytick.minor.size': 6.0,
     'font.size': 18.0,
     'axes.labelsize': 18.0,
     'axes.titlesize': 18.0,
     'xtick.labelsize': 16.5,
     'ytick.labelsize': 16.5,
     'legend.fontsize': 16.5,
     'legend.title_fontsize': 18.0}
    

    输出:

    【讨论】:

    • 谢谢。如何将其重置为默认值?所以,它不会影响其他情节。
    • @Mohammad 编辑答案
    • 再次感谢。最后一个问题:如您所见,在第一行中,没有显示 y_label (bill_length_mm)。你可能知道如何展示它吗?
    • @Mohammad 欢迎,这是默认设置,因为您使用 corner = True 并且在第一行中您有一个元素并且您不需要,因为它们都 bill_length_mm 和其他行有多个元素,你需要标签 x-axisy-axis
    猜你喜欢
    • 1970-01-01
    • 2017-03-19
    • 2017-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-09
    • 2021-03-11
    相关资源
    最近更新 更多