一口甜_ 2024-04-22 15:35 采纳率: 0%
浏览 2

streamlit的components为什么没了

streamlit.components.v1 里的components没有是怎么回事

img

  • 写回答

5条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-22 15:35
    关注

    引自免费微信小程序:皆我百晓生

    在Streamlit v1中,streamlit.components.v1确实包含了一些用于创建和显示可重用组件的功能。然而,在Streamlit的后续版本(例如v0.67及更高版本)中,组件功能被重新设计并整合到了核心库中。这意味着你不再需要导入streamlit.components.v1来使用组件。

    在新版本的Streamlit中,你可以直接使用st.beta_columns()st.columns()st.container()等方法来创建并放置多个图表或其他元素。对于你提供的代码片段,这里有一个对应的更新版代码示例:

    import streamlit as st
    
    # 创建一个两列布局
    col1, col2 = st.beta_columns(2)
    
    # 在第一列中添加第一个条形图
    with col1:
        p1 = chart.chart_plot('barl').render_embed()
        st.html(p1, width=1000, height=500, scrolling=True)
    
    # 在第二列中添加第二个条形图
    with col2:
        p2 = chart.chart_plot('bar2').render_embed()
        st.html(p2, width=1000, height=500, scrolling=True)
    
    # 添加第三个饼状图到主面板
    p3 = chart.chart_plot('pie').render_embed()
    st.write(p3, width=1000, height=500, scrolling=True)
    

    这段代码首先导入了streamlit模块,并通过st.beta_columns(2)创建了一个包含两个子列的布局。然后,我们在每个子列中添加了一个条形图,并在主面板上添加了饼状图。注意,我们直接使用了st.html()函数并将渲染后的嵌入代码传递给它,而不需要指定宽度、高度和滚动属性,因为这些参数可以通过st.write()中的关键字参数设置。

    如果你正在使用的Streamlit版本已经包含了这些更改,那么你应该遵循上述的新方法。如果你仍然想使用旧版本的组件特性,可能需要回退到Streamlit的早期版本。不过,我建议你始终使用最新版本的Streamlit,因为它通常包含性能改进和新的功能。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月22日

悬赏问题

  • ¥20 公众号如何实现点击超链接后自动发送文字
  • ¥15 用php隐藏类名和增加类名
  • ¥15 算法设计与分析课程的提问
  • ¥15 用MATLAB汇总拟合图
  • ¥15 智能除草机器人方案设计
  • ¥15 对接wps协作接口实现消息发送
  • ¥15 SQLite 出现“Database is locked” 如何解决?
  • ¥15 已经加了学校的隶属邮箱了,为什么还是进不去github education?😭
  • ¥15 求会做聚类,TCN的朋友有偿线上指导。以下是目前遇到的问题
  • ¥100 无网格伽辽金方法研究裂纹扩展的程序