Built on top of Plotly.js, React, and Flask, Dash ties modern UI elements like dropdowns, sliders, and graphs to your analytical Python code.
Before dash, apps like these would require an entire team of engineers and designers to create.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
import dash from dash.dependencies import Input, Output import dash_core_components as dcc import dash_html_components as html from pandas_datareader import data as web from datetime import datetime as dt app = dash.Dash() app.layout = html.Div([ html.H1('Stock Tickers'), dcc.Dropdown( id='my-dropdown', options=[ {'label': 'Coke', 'value': 'COKE'}, {'label': 'Tesla', 'value': 'TSLA'}, {'label': 'Apple', 'value': 'AAPL'} ], value='COKE' ), 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='google', start=dt(2017, 1, 1), end=dt.now()) return { 'data': [{ 'x': df.index, 'y': df.Close }] } if __name__ == '__main__': app.run_server()
Dash apps require very little boilerplate to get started: An app like this weighs in at just 40 lines of pure Python.
Dash provides a simple interface for tying UI controls, like sliders, dropdowns, and graphs, with your Python data analysis code.
Every aesthetic element of a Dash app is customizable. Dash apps are built and published in the Web, so the full power of CSS is available.
Explore data, tweak your models, monitor your experiments, or roll your own business intelligence platform. Dash is the frontend to your analytical Python backend.
Built in just under 100 lines of code, this app queries remote financial data from Google Finance and renders interactive candlestick charts. Pandas is used to compute upper and lower bollinger bands.
Explore chemical properties with this drug discovery app. As you hover over points, rich meta information about the drug is displayed in real-time. Buttons above the chart allow you to switch between visualizations.
Dash enables you to build apps that are tailor-made to your datasets and exploratory process.
This Dash App is branded just like a Goldman Sachs report through the use of custom CSS. It includes a "Print to PDF" button and is formatted to great on the web and in PDF form. On the web version, the charts are interactive.
With Dash, you can automate reports from Python and use the same platform for the web and for print.
This Dash App displays the departure of all Uber rides in 2014. A histogram below map displays the popularity of rides and selecting different hours filters data in the map.
Dash apps are powered by Plotly.js, a fully featured charting library including maps like these, financial charts, scientific graphs, and more.
We’re strong believers that the future of technical computing and business intelligence is open source. Dash is MIT licensed. Run Dash on your desktop environment for free.
Using Dash inside your enterprise? Plotly offers Dash On-Premise for 1-click app deployment and App permissioning with LDAP and Active Directory, all behind your corporate firewall. Request a Demo →
Managing apps and servers inside your enterprise is usually a full time job. Our goal with Dash On-Premise is to make deploying and sharing a Dash app internally as easy and secure as possible. No dev-ops required.
Dash On-Premise handles all of the hard parts about managing apps for you: deployingment, managing updates, error handling, URL routing, LDAP integration, and more. Deploy and share an app behind your firewall in minutes.
Dash On-Premise ties into Plotly On-Premise, storing your analytical Dash applications with plotly graphs, datasets, SQL queries, and dashboards in one company-wide portal.