Python Plotly - เลย์เอาต์ YAXIS Legends หลายรายการ [ซ้ำกัน]
ฉันกำลังพยายามสร้างกราฟซ้อนทับ 2 กราฟในรูปเดียวกันแผนภูมิแท่งหนึ่งเส้นและแนวโน้มเส้นเดียวด้วยรหัสด้านล่าง:
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'}}}
ด้วยเหตุนี้ฉันจึงมีบางอย่างเช่นข้างต้นที่ทั้งสองตำนานของแอกซิสซ้ายและแอกซิสขวาผสมกัน
มีใครรู้บ้างว่าฉันจะวางแต่ละด้านที่เกี่ยวข้องได้อย่างไร? ตำนานสำหรับแอกซิสด้านซ้ายทางด้านซ้ายและตำนานสำหรับแอกซิสด้านขวาทางด้านขวา? ขอบคุณล่วงหน้า !
คำตอบ
แต่น่าเสียดายที่Plotly ไม่สนับสนุนหลายตำนาน นี่เป็นการเปิดประเด็น
คุณสามารถซ่อนรายการตำนานด้านซ้ายจากคำอธิบายเดียวที่คุณมีในตอนนี้จากนั้นใช้กล่องคำอธิบายประกอบสี่เหลี่ยมที่มีข้อความของชื่อตัวแปรแนวโน้มเส้นเพื่อสร้างคำอธิบายแผนภูมิด้านซ้ายตั้งแต่เริ่มต้น อย่างไรก็ตามคำอธิบายแผนภูมิจะไม่มีฟังก์ชันการสลับในกรณีนั้นและจะทำหน้าที่เป็นช่องสำหรับแสดงชื่อตัวแปรเท่านั้น