Rangebreaks not working in domains

In the following code:

import pandas as pd

import numpy as np 

import plotly.graph_objects as go

days = 50

date = pd.date_range('20210101', periods=days)

y1 = np.random.uniform(low=10, high=20, size=(days,))

y2 = np.random.uniform(low=5, high=10, size=(days,))

y3 = np.random.uniform(low=8, high=20, size=(days,))

# traces

trace1 = dict(name='y1', type='scattergl', 

            x=date, y=y1, yaxis="y")

trace2 = dict(name='y2', type='scattergl', 

            x=date, y=y2, yaxis="y2")

trace3 = dict(name='y3', type='scattergl', 

            x=date, y=y3, yaxis="y3")

data = [trace1, trace2, trace3]

layout = dict(xaxis=dict(rangeselector=(dict(x=0, y=1, visible=True, buttons=[dict(step='all'),

                     dict(step='month', count=1, label='1mo', stepmode='backward')]))),

              yaxis=dict(domain=[0.4, 1], visible=False), 

              yaxis2=dict(domain=[0.2, 0.4], showticklabels=False), 

              yaxis3=dict(domain=[0, 0.2], showticklabels=False), 

              legend=dict(x=0.3, y=1.08, orientation='h'), 

              margin=dict(b=40, l=40, r=40, t=40),


fig = go.Figure(data=data, layout=layout)

fig.update_layout({"xaxis": {"rangeslider": {"visible": False}}})

fig.update_layout(hovermode='x unified')

…rangebreak does not work…


where am I going wrong?

It works with scatter but not scattergl type!