教你用python的Streamlit库制作可视化网页应用

当涉及到编写交互式应用程序时,Streamlit 是一个非常流行和强大的 Python 库。它使得创建数据可视化和网页应用程序变得简单,无需太多的代码。

以下是一个简单的 Streamlit 教程,它将带你从头开始创建一个基本的交互式应用程序。

步骤1:安装 Streamlit

首先,确保你已经安装了 Python 和 pip。然后,通过以下命令安装 Streamlit:

pip install streamlit
步骤2:创建一个新的 Python 文件

创建一个新的 Python 文件,比如 app.py

步骤3:导入必要的库

app.py 文件的开头,导入所需的库:

import streamlit as st
步骤4:编写应用程序代码

app.py 文件中,你可以使用 Streamlit 的各种功能来创建你的应用程序。下面是一个简单的例子:

# 设置页面标题
st.title("我的第一个 Streamlit 应用")

# 添加文本
st.text("欢迎使用 Streamlit!")

# 添加一个输入框
name = st.text_input("请输入您的姓名", "匿名")

# 添加一个按钮
button = st.button("提交")

# 在按钮被点击时执行的操作
if button:
    st.text("你好," + name + "!欢迎使用 Streamlit!")
步骤5:运行应用程序

保存 app.py 文件并在命令行中运行以下命令:

streamlit run app.py

这将启动一个本地的 Web 服务器,并在浏览器中打开应用程序。你可以通过编辑代码并保存文件来实时更新应用程序。

运行结果:
在这里插入图片描述
这只是一个简单的示例,Streamlit 还提供了许多其他功能,如绘图、数据可视化、布局和部署选项。

常用组件

Streamlit 提供了许多常用的组件,可以帮助你创建交互式应用程序。以下是一些常用的组件和它们的使用方法:

  1. 标题和文本:
    • st.title('标题'):添加一个大标题。
    • st.header('标题'):添加一个较大的标题。
    • st.subheader('标题'):添加一个较小的标题。
    • st.text('文本'):添加一段文本。
  2. 输入组件:
    • st.button('按钮'):添加一个按钮。
    • st.checkbox('复选框', value=False):添加一个复选框。
    • st.radio('单选框', options, index=0):添加一个单选框。
    • st.selectbox('下拉框', options, index=0):添加一个下拉框。
    • st.multiselect('多选框', options, default=None):添加一个多选框。
    • st.slider('滑块', min_value, max_value, value=None, step=None):添加一个滑块。
    • st.text_input('文本输入框', value='', max_chars=None):添加一个文本输入框。
    • st.number_input('数字输入框', min_value=None, max_value=None, value=None, step=None):添加一个数字输入框。
    • st.text_area('多行文本输入框', value='', max_chars=None):添加一个多行文本输入框。
    • st.date_input('日期输入框', value=None, min_value=None, max_value=None):添加一个日期输入框。
    • st.time_input('时间输入框', value=None):添加一个时间输入框。
    • st.file_uploader('文件上传', type=None, accept_multiple_files=False):添加一个文件上传组件。
  3. 输出组件:
    • st.write('文本或对象'):输出文本或对象。
    • st.markdown('Markdown 格式文本'):支持 Markdown 格式的文本输出。
    • st.latex('LaTeX 格式文本'):支持 LaTeX 格式的文本输出。
    • st.code('代码块'):显示代码块。
    • st.json('JSON 数据'):显示 JSON 数据。
    • st.dataframe(data):显示 Pandas 数据帧。
    • st.table(data):显示表格数据。
    • st.image(image, caption=None, use_column_width=False):显示图像。
    • st.audio(audio, format='audio/wav'):播放音频文件。
    • st.video(video, format='video/mp4'):播放视频文件。
  4. 绘图组件:
    • st.pyplot(fig):显示 Matplotlib 图形。
    • st.plotly_chart(fig):显示 Plotly 图形。
    • st.bokeh_chart(fig):显示 Bokeh 图形。
    • st.altair_chart(fig):显示 Altair 图形。
  5. 布局组件:
    • st.sidebar:创建一个侧边栏。
    • st.expander('标题'):创建一个可展开的区域。

这些是一些常用的 Streamlit 组件和它们的基本使用方法。

此外,Streamlit 还提供了一些高级功能和选项,例如:

  • 缓存数据:使用 st.cache 装饰器可以缓存函数的输出,以提高应用程序的性能。
  • 进度条:使用 st.progress 组件可以显示任务的进度。
  • 状态管理:使用 st.session_state 可以跨会话管理状态。
  • 异步更新:使用 st.experimental_asyncio 可以实现异步更新应用程序的功能。

除了上述组件和功能,Streamlit 社区也提供了许多第三方扩展和插件,可以进一步增强你的应用程序的功能和外观。

希望这些信息对你有帮助!Streamlit 是一个非常灵活和易于使用的工具,可以帮助你创建出强大的交互式应用程序。尽情探索和发挥创造力!


  • 📢博客主页:https://blog.csdn.net/qq233325332
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陌北v1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值