![](/img/trans.png)
[英]How to add a hline or vline to a plotly express legend in Python
[英]Can I add a vline and hline to a plotly plot ignoring marginal plots?
我正在將可視化從 seaborn 庫移動到 plotly 庫。 我想要一個帶有 x 和 y 變量邊緣直方圖的散點圖。 我想為我的 x 和 y 變量的平均值顯示一條垂直線和水平線。
為了顯示我的問題,我創建了一個隨機 X 和 Y 值的虛擬 dataframe
import pandas as pd
import numpy as np
import seaborn as sns
import plotly.express as px
df = pd.DataFrame(np.random.randint(0,100,size=(100, 2)), columns=list('XY'))
我想在 plotly 上復制 seaborn 庫 output。
g = sns.JointGrid(data=df, x="X", y="Y")
g.plot(sns.scatterplot, sns.histplot)
g.refline(x=df.X.mean(), y=df.Y.mean())
plt.show()
當我使用add_line
和add_hline
在 plotly 上做類似的事情時,我得到以下信息:
df = pd.DataFrame(np.random.randint(0,100,size=(100, 2)), columns=list('XY'))
fig = px.scatter(df, x='X', y='Y',
marginal_y="histogram", marginal_x="histogram",
width=800, height=600)
fig.add_hline(y=df['X'].mean(), line_dash='dash', annotation_text= f"{df['X'].mean():.0f}")
fig.add_vline(x=df['Y'].mean(), line_dash='dash', annotation_text=f"{df['Y'].mean():.0f}")
fig.show()
我的問題是水平線也繪制在邊緣 x plot 上,垂直線也繪制在邊緣 y plot 上。有沒有辦法防止水平線繪制在邊緣 x plot 和垂直線上繪制在邊緣 y plot 上?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.