1 回答

TA貢獻1872條經驗 獲得超4個贊
如果除了線條和詳細的 y 軸之外,您對上面的設置感到滿意,那么您可以放棄多索引方法,只需在適當的位置使用注釋fig.add_annotation()
下圖是用下面的代碼片段生成的:
使用 , 為左側的注釋留出空間
fig.update_layout(margin=dict(l=150))
,將區間名稱和數據存儲在字典中,并且
計算每個指定區間的中間值,以及
將注釋放置在 y 軸的左側,使用
xref="paper"
, 和不會弄亂 y 軸刻度線的值。
陰謀
完整代碼:
import plotly.graph_objects as go
import numpy as np
x = np.arange(-10,10,1)
y = np.arange(-10,10,1)
y_annotation = [ 'Flexion' if data > 0 else 'Extension' for data in y ]
intervals = {'Flexion':[0,10],
'Extension':[0, -10]}
# plotly setup
fig = go.Figure( data= go.Scatter(x=x,y=y) )
# make room for annotations
fig.update_layout(margin=dict(l=150))
for k in intervals.keys():
fig.add_annotation(dict(font=dict(color="green",size=14),
#x=x_loc,
x=-0.16,
y=(intervals[k][0]+intervals[k][1])/2,
showarrow=False,
text="<i>"+k+"</i>",
textangle=0,
xref="paper",
yref="y"
))
fig.show()
添加回答
舉報