python plotnine:facet_网格中的labeller不更改facet标题
我想在plotnine(python-ggplot)中更改刻面标题,在刻面中使用2个变量,而不更改数据本身 示例:使用mpg数据python plotnine:facet_网格中的labeller不更改facet标题,python,ggplot2,data-visualization,plotnine,Python,Ggplot2,Data Visualization,Plotnine,我想在plotnine(python-ggplot)中更改刻面标题,在刻面中使用2个变量,而不更改数据本身 示例:使用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”、“
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"])
情节没有改变。我曾尝试在谷歌上搜索,但没有找到用两个变量更改刻面标题的答案。请参阅标签机的功能
将plotnine导入为p9
从plotnine.data导入mpg
def col_func(s):
返回“yr”+s
pretty=p9.ggplot(data=mpg,mapping=p9.aes(x='hwy',y='dish'))+p9.geom_点(alpha=0.6)
pretty+p9.facet_网格(“cyl~year”,labeller=p9.labeller(cols=col_func))
谢谢!我只是好奇,如果我想为每一列更改不同的列名,我该怎么做?例如,如果我想将其更改为“1999年”和“2008年”。我尝试了col_name=[“year 1999”,“yr 2008']并将标签机称为labeller=p9.labeller(cols=col_name),但它不起作用。请使用该函数并将选择代码放入其中。e、 gdef col_func(s):返回{'1999':'yr 2009','2008':'yr 2008'}[s]