1
合集-玩转Streamlit
摘要:最近,我在数据分析的一些任务中尝试了闻名已久的Streamlit,再一次感受到Python的强大之处。 于是,准备根据自己的掌握情况,写一个介绍Streamlit的系列。 本文作为第一篇, 先介绍介绍Streamlit是什么,以及它和Jupyter和传统Web应用的区别。 1. 是什么 Stream
阅读全文
摘要:尽管Streamlit的使用非常直观,但正确的环境配置对于充分发挥其潜力仍然至关重要。 本篇将介绍如何从头开始配置Streamlit环境,以及Streamlit开发过程中常用的几个命令。 最后通过一个简单的示例演示开发Streamlit应用的过程。 1. 安装 Streamlit是纯Python的框
阅读全文
摘要:本篇主要介绍Streamlit的核心架构和运行机制, 目的是希望朋友们能先从整体上宏观的了解Streamlit,利用它提供的机制开发性能更高效的应用。 1. 架构 Streamlit比较特殊,它对使用者来说是BS架构应用,而随开发者来说其实更像一个CS架构的应用。 为什么说Streamlit更像CS
阅读全文
摘要:Streamlit不仅让创建单页应用变得易如反掌,更通过一系列创新特性,支持构建多页面应用,极大地丰富了用户体验和数据探索的可能性。 随着我们Streamlit App的功能逐渐增多之后,单个页面展示过多信息,使用不便, 通过多页面可以将功能相关的部分组织在一起,形成逻辑清晰的多个页面,使用户能够轻
阅读全文
摘要:一个优秀的数据应用不仅仅是功能的强大,更在于其用户体验的打造。 而良好的页面布局,作为用户体验的重要组成部分,不仅能够提升信息的可读性,还能引导用户高效地完成操作。 反之,混乱的布局会让人感到困惑和挫败,甚至导致用户放弃使用应用。 在Streamlit中,Sidebar(侧边栏)、Columns(列
阅读全文
摘要:如果你的Streamlit App中使用的数据的比较敏感,那么,保护这个App及其背后的数据免受未授权访问变得至关重要。 无论是出于商业机密的保护、用户隐私的维护,还是为了满足日益严格的合规要求,确保只有经过验证的用户才能访问特定的数据和功能,已成为大部分应用的一个基本需求。 登录认证,作为访问控制
阅读全文
摘要:本篇准备开始介绍Streamlit的组件。 Streamlit的组件非常多,后续几篇打算按照用途的分类,介绍每个分类中最常用的组件。 本次从最简单的组件开始,介绍文本和标题相关的组件,也就是以下4个组件: st.text:用于显示普通的文本内容 st.title:用于显示页面的大标题 st.head
阅读全文
摘要:数据展示组件在Streamlit各类组件中占据了至关重要的地位, 它的核心功能是以直观、易于理解的方式展示数据。 本次介绍的数据展示组件st.dataframe和st.table,能够将复杂的数据集以表格、图表等形式清晰地呈现出来,使得用户能够快速把握数据的整体情况和细节特征。 1. st.data
阅读全文
摘要:Streamlit中的图像与媒体组件,主要是st.image、st.audio和st.video。 它们是专为在Streamlit Web应用程序中嵌入和展示多媒体内容而设计的,这些组件不仅丰富了应用程序的呈现形式,还极大地提升了用户体验和互动性。 1. st.image st.image函数用于在
阅读全文
摘要:交互类组件在Web应用程序中至关重要,它们允许用户与应用进行实时互动,能够显著提升用户体验。 用户不再只是被动地接收信息,而是可以主动地输入数据、做出选择或触发事件,从而更加深入地参与到应用中来。 此外,对于某些复杂的任务或操作,交互类组件可以将其分解成一系列简单的步骤或选择,从而降低用户的认知负担
阅读全文
摘要:在Streamlit中,布局类组件扮演着至关重要的角色。 它们不仅决定了应用程序的视觉呈现和用户体验,也极大地增强了页面内容的组织性和可读性。 通过这些组件,开发者可以灵活地划分页面空间,创建出清晰、有条理的布局结构。 本篇主要介绍3种构建Streamlit App时常用的3种布局类组件: st.c
阅读全文
摘要:之前介绍过两个数据展示的组件,st.dataframe和st.table。 今天介绍的st.data_editor组件,除了展示数据的功能更加强大之外,还可以编辑数据。 1. 概要 st.data_editor组件在数据展示和编辑中都发挥着独特且重要的作用。 首先,在数据展示方面,它的优势在于: 直
阅读全文
摘要:在Streamlit中,Form组件是一种特殊的UI元素,允许用户输入数据而不立即触发应用的重新运行。 这对于创建需要用户输入多个参数后再进行处理的交互式表单非常有用。 1. 概要 Form组件的主要作用是在一个表单内集中处理多个用户输入,使得数据收集和验证更加高效和直观。 通过Form组件,开发者
阅读全文
摘要:在 Streamlit 应用开发中,Fragments组件是一种用于更精细地控制页面元素更新和显示顺序的工具。 它允许开发者将内容分解成多个小的片段,这些片段可以按照特定的顺序或者逻辑进行更新,而不是一次性地更新整个页面或容器中的所有内容。 这为创建动态且交互性强的用户界面提供了更多的灵活性和控制力
阅读全文
摘要:Steamlit虽然也自带了一些绘图组件(比如折线图,柱状图和散点图等等),但是都比较简单, 和Python传统的可视化库比起来,功能上差了很多。 本篇介绍如何在Streamlit App中使用Matplotlib库来绘图。 1. st.pyplot函数 st.pyplot函数专门用于在Steaml
阅读全文
摘要:之前介绍了如何在Streamlit App中使用Matplotlib库来绘图。 本篇介绍 Steamlit结合Poltly的方法,相比于Matplotlib,Poltly的交互性更强, 更适合在Web应用中做为可视化的工具。 1. st.plotly_chart函数 st.plotly_chart函
阅读全文
摘要:在Web应用中,文件的上传下载是交互中不可缺少的功能。 因为在业务功能中,一般不会只有文字的交互,资料或图片的获取和分发是很常见的需求。 比如,文件上传可让用户向服务器提交数据,如上传图片分享生活、提交文档用于工作协作等,丰富应用功能。 而文件下载则使用户能获取服务器端的资源,像下载软件、报告等,提
阅读全文
摘要:学习了Streamlit了之后,可以尝试给自己的命令行小工具加一个简单的界面。 本篇总结了我改造自己的数据采集的工具时的一些经验。 1. 概要 与常规的程序相比,数据采集任务的特点很明显,比如它一般都是I/O密集型程序,涉及大量网络请求或文件读写,耗费的时间比较长;而且往往是按照一定的时间间隔周期性
阅读全文
摘要:在金融市场分析中,查看不同交易对的 K 线数据是一项基础且重要的工作。 今天,我们就来学习如何使用 Streamlit 构建一个简单的 K 线查看小工具,让你能够方便地查看不同交易对在不同时间范围内的 K 线数据。 1. 环境准备 首先,确保已经安装了必要的库。 除了 Streamlit 用于构建界
阅读全文
摘要:在Web应用开发中,会话管理是一个至关重要的概念,它能够帮助开发者追踪用户在应用中的行为和状态,从而为用户提供更加个性化、连贯且高效的交互体验。 Streamlit作为一个简单而强大的用于快速构建和部署数据科学和机器学习项目,也提供了强大的会话状态管理功能,即st.session_state。 本文
阅读全文
1