学习streamlit-4

系列目录

st.slider

今天学习st.slider滑块组件的使用。

st.slider滑块组件通常被用来作为应用的输入,支持整数、浮点数、日期、时间和日期时间。

下面的示例程序包含以下简单功能,以演示st.slider滑块组件:

  1. 用户通过调整滑块选择值
  2. 应用打印出所选值

代码:

import streamlit as st
from datetime import time, datetime

st.header('st.slider')

# Example 1

st.subheader('Slider')

age = st.slider('How old are you?', 0, 130, 25)
st.write("I'm ", age, 'years old')

# Example 2

st.subheader('Range slider')

values = st.slider(
     'Select a range of values',
     0.0, 100.0, (25.0, 75.0))
st.write('Values:', values)

# Example 3

st.subheader('Range time slider')

appointment = st.slider(
     "Schedule your appointment:",
     value=(time(11, 30), time(12, 45)))
st.write("You're scheduled for:", appointment)

# Example 4

st.subheader('Datetime slider')

start_time = st.slider(
     "When do you start?",
     value=datetime(2020, 1, 1, 9, 30),
     format="MM/DD/YY - hh:mm")
st.write("Start time:", start_time)

运行后效果:

可以在线演示,在网页与应用交互,实时查看效果。

逐行解释

创建streamlit应用时要做的第一件事就是导入库:

import streamlit as st
from datetime import time, datetime

然后创建一个文本标题:

st.header('st.slider')

例1

滑块:

st.subheader('Slider')

age = st.slider('How old are you?', 0, 130, 25)
st.write("I'm ", age, 'years old')

正如我们所见,滑块在这里用来收集有关用户年龄的输入,第一个参数是显示在滑块组件上方的询问文本"How old are you?",之后三个整数分别表示滑块的最小值、最大值和默认值0、130、25.

例2

范围滑块:

st.subheader('Range slider')

values = st.slider(
     'Select a range of values',
     0.0, 100.0, (25.0, 75.0))
st.write('Values:', values)

范围滑块允许选择下限值和上限值对。

第一个输入参数显示范围滑块小部件正上方询问 的文本。‘Select a range of values’

以下三个参数表示最小值和最大值,而最后一个元组表示要用作所选下限 (25.0) 和上限 (75.0) 边界值的默认值。0.0, 100.0, (25.0, 75.0)

例3

范围时间滑块:

st.subheader('Range time slider')

appointment = st.slider(
     "Schedule your appointment:",
     value=(time(11, 30), time(12, 45)))
st.write("You're scheduled for:", appointment)

范围时间滑块允许选择日期时间的下限值和上限值对。

第一个输入参数显示范围时间滑块小部件正上方的文本,询问’Schedule your appointment’

日期时间的下限值和上限值对的默认值分别设置为 11:30 和 12:45。

例4

日期时间滑块:

st.subheader('Datetime slider')

start_time = st.slider(
     "When do you start?",
     value=datetime(2020, 1, 1, 9, 30),
     format="MM/DD/YY - hh:mm")
st.write("Start time:", start_time)

日期时间滑块允许选择日期时间。

第一个输入参数显示日期时间滑块小部件正上方的文本,询问’When do you start?’

通过value参数把日期时间的默认值设置为’2020年1月1日9:30’。

st.select_slider

streamlit还提供了选择滑块组件st.select_slider,用法与st.slider非常相似。

示例代码:

import streamlit as st

color = st.select_slider(
    'Select a color of the rainbow',
    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'])
st.write('My favorite color is', color)

start_color, end_color = st.select_slider(
    'Select a range of color wavelength',
    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],
    value=('red', 'blue'))
st.write('You selected wavelengths between', start_color, 'and', end_color)

运行效果:

streamlit-widget.select

公众号 | FunIO
微信搜一搜 “funio”,发现更多精彩内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值