Полностью вторичная ось исчезает при использовании ползунка - PullRequest
0 голосов
/ 04 мая 2020

Я создал график с использованием следующего примера кода с целью отображения разных линий на разных осях Y. Моя проблема заключается в том, что как только я использую ползунок для изменения отображаемых данных, вторичная ось y исчезает и не возвращается, даже если я выбираю период времени, выбранный с помощью ползунка:

Любая подсказка, как я можно это исправить?

import pandas as pd
import plotly.express as px
import datetime

df = pd.DataFrame(columns=['variable', 'value', 'time', 'date'],
                  data=[['A', 12, datetime.time(12, 0, 0), '2002-01-01'],
                        ['A', 13, datetime.time(13, 0, 0), '2002-01-01'],
                        ['A', 14, datetime.time(14, 0, 0), '2002-01-01'],
                        ['A', 11, datetime.time(12, 0, 0), '2002-01-02'],
                        ['A', 14, datetime.time(13, 0, 0), '2002-01-02'],
                        ['A', 12, datetime.time(14, 0, 0), '2002-01-02'],
                        ['A', 11, datetime.time(12, 0, 0), '2002-01-03'],
                        ['A', 11, datetime.time(13, 0, 0), '2002-01-03'],
                        ['A', 11, datetime.time(14, 0, 0), '2002-01-03'],
                        ['B', 0.1, datetime.time(12, 0, 0), '2002-01-01'],
                        ['B', 0.1, datetime.time(13, 0, 0), '2002-01-01'],
                        ['B', 0.04, datetime.time(14, 0, 0), '2002-01-01'],
                        ['B', 0.11, datetime.time(12, 0, 0), '2002-01-02'],
                        ['B', 0.04, datetime.time(13, 0, 0), '2002-01-02'],
                        ['B', 0.02, datetime.time(14, 0, 0), '2002-01-02'],
                        ['B', 0.1, datetime.time(12, 0, 0), '2002-01-03'],
                        ['B', 0.1, datetime.time(13, 0, 0), '2002-01-03'],
                        ['B', 0.11, datetime.time(14, 0, 0), '2002-01-03']])

fig = px.line(data_frame=df, x='time', y='value',
              color='variable', animation_frame='date')

fig.update_traces(line={'color':'blue'}, selector={'legendgroup': 'A'})
fig.update_traces(yaxis='y2', line={'color':'red'}, selector={'legendgroup': 'B'})
fig.update_layout(legend_orientation="h", legend=dict(x=0, y=1.1))

fig.update_layout(
    yaxis=dict(
        title="A axis",
        titlefont=dict(
            color="blue"
        ),
        tickfont=dict(
            color="blue"
        )
    ),
    yaxis2=dict(
        title="B axis",
        titlefont=dict(
            color="red"
        ),
        tickfont=dict(
            color="red"
        ),
        anchor="free",
        overlaying="y",
        side="right",
        position=1
    )
)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...