Python Plotly - Çoklu YAXIS Efsaneleri Düzeni [yinelenen]

Jan 18 2021

Aşağıdaki kodla aynı şekil, bir çubuk grafik ve bir çizgi trendi üzerinde 2 örtüşme grafiği oluşturmaya çalışıyorum:

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'}}}

Sonuç olarak, sol yaxis ve sağ yaxis için her iki lejantın birbirine karıştırıldığı yukarıdaki gibi bir şeye sahibim.

Her birini ilgili tarafına nasıl koyabileceğimi bilen var mı? Solda sol yaxis ve sağda sağ yaxis için açıklama? Şimdiden teşekkürler !

Yanıtlar

DerekO Jan 18 2021 at 16:31

Ne yazık ki Plotly birden fazla efsaneyi desteklemiyor . Bu açık bir sorundur.

Sol açıklama öğelerini şu anda sahip olduğunuz bir göstergeden gizleyebilir ve ardından sol göstergeyi sıfırdan oluşturmak için çizgi eğilim değişken adlarının metnini içeren dikdörtgen bir açıklama kutusu kullanabilirsiniz. Bununla birlikte, bu durumda lejand aslında herhangi bir geçiş işlevine sahip olmayacak ve yalnızca değişken adlarını görüntülemek için bir kutu görevi görecektir.