当我研究了很多,我不能找到我的问题的解决方案.我用Plotly express做了一个图,范围滑块是否存在于Y轴?我已经实现了范围滑块为X轴如下,但Y轴是如此混乱,我试图拿出一个解决方案,但我不能实现范围滑块在Y轴上,有没有什么方法可以使这个图表表现得更好?
def chart(df)
color_discrete_map = {'df1': 'rgb(255,0,0)',
'df2': 'rgb(0,255,0)',
'df3': '#11FCE4',
'df4': '#9999FF',
'df5': '#606060',
'df6': '#CC6600'}
fig = px.scatter(df, x='DATE', y='CODE', color='SOURCE', width=1200,
height=800,color_discrete_map=color_discrete_map)
fig.update_layout(xaxis_type='category')
fig.update_layout(yaxis={'dtick':1})
fig.update_layout(
margin=dict(l=250, r=0, t=0, b=20),
)
# fig.update_layout(xaxis=dict(tickformat="%y-%m", tickmode = 'linear', tick0 = 0.5,dtick = 0.75))
# Add range slider
fig.update_layout(
xaxis=dict(
rangeselector=dict(
buttons=list([
dict(count=1,
label="1m",
step="month",
stepmode="backward"),
dict(count=6,
label="6m",
step="month",
stepmode="backward"),
dict(count=1,
label="YTD",
step="year",
stepmode="todate"),
dict(count=1,
label="1y",
step="year",
stepmode="backward"),
dict(step="all")
])
),
rangeslider=dict(
visible=True
),
type="date"
)
)
# Add range slider
fig.update_layout(yaxis={'dtick':1})
fig.update_xaxes(tickformat = '%Y-%B', dtick='M1')
fig.update_xaxes(ticks= "outside",
ticklabelmode= "period",
tickcolor= "black",
ticklen=10,
minor=dict(
ticklen=4,
dtick=7*24*60*60*1000,
tick0="2016-07-03",
griddash='dot',
gridcolor='white')
)
st.plotly_chart(fig)
return
1条答案
按热度按时间wpx232ag1#
不幸的是,Plotly不支持y轴的滑块选项。但有一些方法,如缩放:
使用上面的代码,你会让用户放大一个特定的区域,并有一个清晰的视图。
或者您可以浏览注解以突出显示特定数据或过滤掉数据。