添加微信号CNFeffery
备注“dash学习”
即刻加入dash
应用开发技术交流群
大家好我是费老师,今天要给大家分享的项目是纯Python
实现的「热门股票可视化」应用,首先来看一下其主要功能的操作演示视频(玩转dash公众号后台回复「热门股票」可直接获取该项目完整源码及示例数据的下载地址):
之所以可以完全基于Python
轻松开发出这个应用,要归功于Python
生态中非常强大的网页应用开发框架Dash
,以及其相关生态中的fac
(官网地址:https://fac.feffery.tech/ )等组件库,使得我们可以轻松调用不同的功能组件,并编写相应的回调函数来实现各种用户交互反馈功能:
下面我们对这个应用实现的主要过程做简短介绍,具体技术细节欢迎扫描「文章末尾二维码」,即刻加入Dash技术学习交流群一起交流:
1 启动应用
首先,按照「文章开头提示」下载好本项目完整源码解压后,在项目根目录打开终端,激活你的Python
环境(推荐使用3.10
版本),接着执行pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
,完成当前项目依赖库的安装。
然后直接在终端执行python app.py
即可启动应用,按照控制台提示的信息,浏览器访问本地http://127.0.0.1:8050
地址即可访问应用:
2 应用主要功能
该应用案例比较简单,每次访问应用时,后台都会从东方财富请求最新的A股实时行情数据(感谢3群「Маргарита」同学提供的数据获取脚本),经过简单的预处理之后,按照预设的涨跌幅档次,为每只股票计算好填充色:
再配合由我开源维护的「可视化图表」组件库fact
中的矩形树图组件AntdTreemap
分别生成「深市」、「沪市」、「北交所」板块对应的「交易额TOP50热门股票」矩形树图,最后用fac
中的标签页组件AntdTabs
分别切换展示即可,非常的简单。
3 应用开发重点思路
作为一个轻量的Dash
应用,其项目结构非常简单:
app.py
中构建了应用的全部功能内容,其中使用到函数式layout
以实现每次用户访问时,均展示最新的实时数据结果fetch_data.py
中则简单封装了针对东方财富实时行情数据的获取及预处理接口
因为是基于Python
中的Dash
框架进行开发,因此该应用的实现过程全部使用Python
编写,无需学习复杂的javascript
等语言,在此应用基础上进行二次开发非常的灵活高效。
更多有关此应用的技术细节,欢迎添加微信号CNFeffery
备注「dash学习」,即刻加入技术交流群一起学习讨论。
更多Dash
应用开发干货内容,欢迎持续关注我们❤️。
扫描下方二维码加我好友备注dash学习
即刻加入dash
应用开发技术交流群
点击下方卡片加入玩转Dash
技术社区
掌握Dash应用开发,提升你的行业数字化能力