Python Plotly - Diseño de múltiples leyendas de YAXIS [duplicado]
Estoy tratando de construir 2 gráficos superpuestos en la misma figura, un gráfico de barras y una tendencia de línea con el siguiente código:
data = []
for __brand in df_cumsum['brand'].unique():
data.append(go.Scatter(
x=df_cumsum.loc[df_cumsum['brand'] == __brand, :]['day'],
y=df_cumsum.loc[df_cumsum['brand'] == __brand, :]['ecpm_cum'],
name=__brand,
yaxis='y1'
))
data.append(go.Bar(
x=df_cumsum.loc[df_cumsum['brand'] == __brand, :]['day'],
y=df_cumsum.loc[df_cumsum['brand'] == __brand, :]['impressions_cum'],
name=__brand,
yaxis='y2',
opacity=0.3
))
figure = {'data': data,
'layout': {'title': 'Delivery Performance Over Test Period (Days)',
'yaxis': {'title': 'Cumulative eCPM (USD)'},
'yaxis2': {'title': 'Cumulative Delivery (Impressions)', 'side': 'right', 'overlaying': 'y'}}}

Como resultado, tengo algo como lo anterior donde ambas leyendas para el eje izquierdo y el eje derecho se mezclan.
¿Alguien sabe cómo puedo poner cada uno en su lado relevante? ¿Leyenda del eje izquierdo a la izquierda y leyenda del eje derecho a la derecha? Gracias por adelantado !
Respuestas
Desafortunadamente, Plotly no admite múltiples leyendas . Este es un tema abierto.
Puede ocultar los elementos de la leyenda de la izquierda de la leyenda que tiene ahora y luego usar un cuadro de anotaciones rectangular con el texto de los nombres de las variables de tendencia de línea para construir la leyenda de la izquierda desde cero. Sin embargo, la leyenda en realidad no tendrá ninguna funcionalidad de alternancia en ese caso y solo servirá como un cuadro para mostrar los nombres de las variables.