1

当在分面中使用 2 个变量而不更改数据本身时,我想更改 plotnine(python ggplot)中的分面标题。

示例:使用 mpg 数据

 pretty = p9.ggplot(data=mpg, mapping = p9.aes(x='hwy', y='displ'))+ p9.geom_point(alpha = 0.6)
 pretty + p9.facet_grid("cyl~year")

我有以下情节:

在此处输入图像描述

我想将年份更改为“1999 年”和“2008 年”,并将 cly 标题更改为“c4”、“c5”、“c6”、“c8”。但是当我在 facet_grid 中使用贴标机时:

  pretty + p9.facet_grid("cyl~year", labeller = ["c4", "c5","c6", "c8", "yr 1999", "yr 2008"])

情节没有改变。我试图用谷歌搜索,但没有找到用两个变量改变分面标题的答案。

4

1 回答 1

1

请参阅该函数的文档。labeller

import plotnine as p9
from plotnine.data import mpg

def col_func(s):
    return 'yr ' + s

pretty = p9.ggplot(data=mpg, mapping = p9.aes(x='hwy', y='displ'))+ p9.geom_point(alpha = 0.6)
pretty + p9.facet_grid("cyl~year", labeller=p9.labeller(cols=col_func))

在此处输入图像描述

于 2020-02-08T21:18:39.327 回答