метки фасетов в plotly

Я хочу изменить метки фасетов на plotly(_express) графике. Вот сюжет:

import plotly.express as px
tips = px.data.tips()
fig = px.scatter(tips, x="total_bill", y="tip", color="smoker", facet_col="sex")
fig.show()

Я бы хотел убрать sex= с этикеток.


person RoyalTS    schedule 30.07.2019    source источник


Ответы (1)


ОБНОВЛЕНИЕ: начиная с версии 4.2 в октябре 2019 года, следующее использование for_each_annotation рекомендуется в документации по адресу https://plotly.com/python/facet-plots/#customize-subplot-figure-titles

import plotly.express as px

fig = px.scatter(px.data.tips(), x="total_bill", y="tip", facet_row="sex")

fig.for_each_annotation(lambda a: a.update(text=a.text.split("=")[-1]))

fig.show()

Самый простой способ сделать это - перебрать аннотации:

for a in fig.layout.annotations:
    a.text = a.text.split("=")[1]
person nicolaskruchten    schedule 30.07.2019
comment
Извините, я изначально ответил не на тот вопрос, я отредактировал его, чтобы ответить на правильный вопрос :) - person nicolaskruchten; 30.07.2019