专栏名称: 挖地兔
金融数据采集与挖掘,开启量化金融的第一扇大门。
目录
相关文章推荐
艾儿天空  ·  阅文2024年会将于2月28号在新加坡圣淘沙 ... ·  18 小时前  
航空工业  ·  奉剑海天 “新”火相传 | ... ·  昨天  
航空工业  ·  外场日志:与AC332共成长 ·  2 天前  
51好读  ›  专栏  ›  挖地兔

基于Python的交互式可视化工具

挖地兔  · 公众号  ·  · 2017-10-16 01:03

正文

基于Python的web交互式可视化工具



前几天发现一个可视化工具Dash,当看到它的交互式效果后突然就觉得眼前一亮。早就想写出来分享给大家,今天利用睡前一点时间发出来,希望能给有需要的朋友带来一点帮助或者多一个参考。


Dash介绍

在Python语言环境里,有不少可视化解决方案,以前的公众号文章曾经介绍过几个。这些工具很适合利用静态数据来展示图形效果,如果要在数据基础之上增加交互功能,就需要额外增加不少代码。要么实现起来比较复杂,要么很难实现实时交互。


有了Dash以后,这个问题就好解决了。


Dash是利用Flask、plotly.js和React.js构建起来的自定义可视化开源框架。


大概在2017年6月,Dash被正式发布为开源库,用于构建交互式可视化网页。类似echarts和highcharts,基本上都是基于js来实现图形效果。但是!Dash是基于Python运行,这就可以跟pandas和Numpy,甚至人工智能的包无缝对接。


有人又要说了,D3、echarts和highcharts在Flask下也可以结合使用啊。是的,但是Dash为你做了很多整合的工作,代码量要少很多,甚至你不要懂太多的HTML标签就可以做交互式报表。


Dash安装

支持Python2和3

pip install dash==0.18.3
pip install dash-renderer==0.10.0
pip install dash-html-components==0.7.0
pip install dash-core-components==0.12.6
pip install plotly --upgrade

安装成功之后,我们先来运行一个简单的示例。这里拿13日收盘后涨幅排名前50只股票的PE做一个柱状图的展示。

运行效果如下:

交互式效果

由于时间关系,暂且只从官网找一些交互式效果展示给大家。

1、通过pandas DataFrame数据展示Slide效果

2、动态地图效果

3、交互式数据表格


4、动态3D效果


Dash组件

Dash封装了常见常用的HTML组件,类似上面动态交互的输入框、下拉菜单,按钮等。


我们看几个最简单的,有兴趣的朋友可以自己尝试。


1、输入框

2、复选框

3、按钮

4、数据上传组件







请到「今天看啥」查看全文