簡體   English   中英

為 plotly 圖的每個方面添加跟蹤

[英]add a trace to every facet of a plotly figure

我想為 plotly plot 的所有方面添加跟蹤。

例如,我想為“tips”數據集的散點圖的每個每日方面添加一條參考線,顯示 15% 的小費。 但是,我在下面的嘗試僅將該行添加到第一個方面。

import plotly.express as px
import plotly.graph_objects as go
import numpy as np

df = px.data.tips()

ref_line_slope = 0.15 # 15% tip for reference
ref_line_x_range = np.array([df.total_bill.min(), df.total_bill.max()])

fig = px.scatter(df, x="total_bill", y="tip",facet_col="day", trendline='ols')
fig = fig.add_trace(go.Scatter(x=reference_line_x_range,y=ref_line_slope*reference_line_x_range,name='15%'))
fig.show()

在此處輸入圖像描述

這不是一個優雅的解決方案,但它應該適用於大多數情況

for row_idx, row_figs in enumerate(fig._grid_ref):
    for col_idx, col_fig in enumerate(row_figs):
        fig.add_trace(go.Scatter(...), row=row_idx+1, col=col_idx+1)

根據plotly 的示例,您可以將'all'作為rowcol arguments 傳遞,甚至可以跳過空子圖:

fig.add_trace(go.Scatter(...), row='all', col='all', exclude_empty_subplots=True)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM