我们都知道Python数据可视化工具pyecharts,不过今天蜗牛博客(http://www.snailtoday.com)要介绍的是另一个工具:Dash。
我最开始是在一个flask开发的网站上看到使用它,看到那个网站的作者对Dash充满喜欢,也忍不住去了解一下。
Dash是建立在Flask, Plotly.js, and React.js之上,它的官网在这儿,这里还有实例
两分钟测试Dash
既然Dash这么好用,那么我们就来测试一下吧,令人开心的是,这个过程只需要花费两分钟。
测试环境:
win7 英文版
Anaconda(python3.x)
一、安装Dash
执行以下三条命令安装即可。
pip install dash pip install dash-html-components pip install dash-core-components
二、执行代码
#!/usr/bin/env python # python3.5 # -*- coding: utf8 -*- import dash from dash.dependencies import Input, Output import dash_core_components as dcc import dash_html_components as html from datetime import datetime as dt import tushare as ts app = dash.Dash() app.layout = html.Div([ html.H1('股票图'), dcc.Dropdown( id='my-dropdown', options=[ {'label': '爱柯迪', 'value': '600933'}, {'label': '赣锋锂业', 'value': '002460'}, {'label': '中国神华', 'value': '601088'}, {'label': '广汽集团', 'value': '601238'}, {'label': '春秋航空', 'value': '601021'}, ], value='600933' ), dcc.Graph(id='my-graph') ]) @app.callback(Output('my-graph', 'figure'), [Input('my-dropdown', 'value')]) def update_graph(selected_dropdown_value): # df = web.DataReader( # selected_dropdown_value, data_source='yahoo', # start=dt(2018, 1, 1), end=dt.now() # ) df = ts.get_k_data(selected_dropdown_value, ktype='30') return { 'data': [ { 'x': df.index, 'y': df.close } ] } if __name__ == '__main__': app.run_server(host="0.0.0.0")
然后在浏览器中输入:http://127.0.0.1:8050/,就可以看到效果了:
下拉菜单中,还可以选择股票: