当前位置:   article > 正文

【Web快速开发】Streamlit_streamlit页面布局

streamlit页面布局

Installation - Streamlit Docshttps://docs.streamlit.io/library/get-started/installation

Streamlit 的特色:

  1. API简单明了,易上手
  2. 无须学习前端知识(html、css、javascript)
  3. 支持markdown和html文本的渲染

一、快速了解Streamlit

  • 对于用户的每一次交互,整个脚本从头到尾执行一遍
  • Streamlit基于UI组件的状态给变量赋值
  • 缓存让Streamlit可以避免重复请求数据或重复计算

1. 效果展示

2. 样例代码

  1. import streamlit as st
  2. import pandas as pd
  3. import numpy as np
  4. DATE_COLUMN = 'date/time'
  5. DATA_URL = ('https://s3-us-west-2.amazonaws.com/streamlit-demo-data/uber-raw-data-sep14.csv.gz')
  6. #缓存机制,再一个函数前使用@st.cache,用户在第二次使用时,可以直接读取。当然,前提是传进去的参数要是一样的。
  7. @st.cache
  8. def load_data(nrows):
  9. data = pd.read_csv(DATA_URL, nrows=nrows)
  10. lowercase = lambda x: str(x).lower()
  11. data.rename(lowercase, axis='columns', inplace=True)
  12. data[DATE_COLUMN] = pd.to_datetime(data[DATE_COLUMN])
  13. return data
  14. # 创建一个文本框,让用户知道数据正在加载
  15. data_load_state = st.text('Loading data...')
  16. # 展示数据的前1000行
  17. data = load_data(1000)
  18. # 告诉用户数据已经加载成功
  19. data_load_state.text('Done! (using st.cache)')
  20. #添加一个单选框,是否要显示表格里面的内容
  21. if st.checkbox('Show raw data'):
  22. st.subheader('Raw data')
  23. st.write(data)
  24. st.subheader('Number of pickups by hour')
  25. hist_values = np.histogram(data[DATE_COLUMN].dt.hour, bins=24, range=(0,24))[0]
  26. #绘制柱状图
  27. st.bar_chart(hist_values)
  28. # Some number in the range 0-23
  29. hour_to_filter = st.slider('hour', 0, 23, 17)
  30. filtered_data = data[data[DATE_COLUMN].dt.hour == hour_to_filter]
  31. st.subheader('Map of all pickups at %s:00' % hour_to_filter)
  32. st.map(filtered_data)

 

二、Streamlit功能介绍

  • 渲染图表
  • 页面布局
  • 输入交互

1. 渲染图表

2. 页面布局

2.1 整体页面配置

  1. st.set_page_config(
  2. page_title="Ex-stream-ly Cool App",
  3. page_icon="
    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/410365
    推荐阅读