streamlit有没有菜单栏menu/导航栏navigation/multi-page/multi-app

国盛
2023-12-01

streamlit有没有菜单呢,让我们来看看下面几个实现:

  • streamlit-option-menu
    https://medium.com/codex/create-a-multi-page-app-with-the-new-streamlit-option-menu-component-3e3edaf7e7ad#:~:text=To%20use%20the%20streamlit-option-menu%20component%2C%20you%20will%20need,function%2C%20we%20need%20to%20specify%20a%20few%20parameters%3A

最贴近需求的一个,它的最大问题是:不同的page之间不能交互,这个问题来自于不同的page或者是with进程之间一旦在streamlit开启之后,变量是不会存储的,它在if-else语句里边的变量也不能存储(关于变量存储的问题请参考另一篇文章streamlit保持变量(Persistence of a single variable),使用session)

  • navigation bar
    https://discuss.streamlit.io/t/navigation-bar-st-sidebar-selectbox/4932
    不太行哦
  • 多级菜单
    https://github.com/TangleSpace/hydralit_components
    太复杂了,没有尝试

对于这样的需求,不少人希望streamlit增加扩展功能或者插件,我看到的解释是,streamlit想维持它自己的简单化框架,也许是streamlit的目标用户是数据分析师或者是算法工程师,让它们更加关注算法和数据本身,花更少的时间在UI交互上,如果想要有更漂亮的交互,那么还是到真正的前端吧

streamlit的column中可以嵌套另一个column吗?container中可以嵌套另一个column吗?亲测是不行的呜呜,攻略中的beta_column和beta_container也不行嗷

 类似资料: