At the intersection of data visualisation and database UI is the data dashboard. AFAICT this means “an exploratory graphing tool for your data which requires little or no programming or statistics special knowledge”. Occasionally useful. Occasionally cargo-culted by bizdev people who don’t know what they are doing. See also, e.g. the open source dashboard framework roundup, or the alternativeto Tableau listing.
Question: why are data dashboards not configured per-default, out-of-the-box to ignore half the data that they are put in, making them into principled exploratory data analysis tools by reseerving some data to verifying they hypotheses they suggest?
Here are some options I am auditioning for some clients.
A jupyter-specific option.
- And voilà! … from Jupyter notebooks to standalone dashboards
- voila-dashboards/voila: Voilà turns Jupyter notebooks into standalone web applications
- Voilà gallery
Voilà turns Jupyter notebooks into standalone web applications.
- Voilà supports Jupyter interactive widgets, including the roundtrips to the kernel.
- Voilà does not permit arbitrary code execution by consumers of dashboards.
- Built upon Jupyter standard protocols and file formats, voilà works with any Jupyter kernel (C++, Python, Julia), making it a language-agnostic dashboarding system.
- Voilà is extensible. It includes a flexible template system to produce rich application layouts.
Sounds similar to many other options? Panel explains how these compare.
There is useful stuff in the broader Voilà ecosystem, which is a good sign, e.g.:
Voila-gridstack is a Voilà template started by Bartosz Telenczuk to turn notebooks into dashboards …. The idea behind is to be able to change the layout of the cells to re-configure your dashboards using drag-and-drop. Once you have your desired layout, its configuration stays in the metadata of the notebook. This makes it simple to carry around or share the notebook and its layout configuration.
Panel is an open-source Python library that lets you create custom interactive web apps and dashboards by connecting user-defined widgets to plots, images, tables, or text.
Panel makes it simple to make:
- Plots with user-defined controls
- Property sheets for editing parameters of objects in a workflow
- Control panels for simulations or experiments
- Custom data-exploration tools
- Dashboards reporting key performance indicators (KPIs) and trends
- Data-rich Python-backed web servers
- and anything in between
Panel objects are reactive, immediately updating to reflect changes to their state, which makes it simple to compose viewable objects and link them into simple, one-off apps to do a specific exploratory task. The same objects can then be reused in more complex combinations to build more ambitious apps, while always sharing the same code that works well on its own.
Panel lets you move the same code freely between an interactive Jupyter Notebook prompt and a fully deployable standalone server. That way you can easily switch between exploring your data, building visualizations, adding custom interactivity, sharing with non-technical users, and back again at any point, using the same tools and the same code throughout. Panel thus helps support your entire workflow, so that you never have to commit to only one way of using your data and your analyses, and don’t have to rewrite your code just to make it usable in a different way. In many cases, using Panel can turn projects that used to take weeks or months into something you finish on the same day you started, creating a full Python-backed deployed web service for your visualized data in minutes or hours without having to run a software development project or hand your work over to another team.
Streamlit is an open-source Python library that makes it easy to create >and share beautiful, custom web apps for machine learning and data >science.
In just a few minutes, you can build and deploy powerful data apps to:
- Explore your data
- Interact with your model
- Analyze your model behavior and input sensitivity
- Showcase your prototype with awesome web apps
Moreover, Streamlit enables interactive development with automatic rerun on files changes.
Grafana seems to specialize in time series analytics.
From heatmaps to histograms. Graphs to geomaps. Grafana has a plethora of visualization options to help you understand your data, beautifully. […] Bring your data together to get better context. Grafana supports dozens of databases, natively. Mix them together in the same Dashboard.
R can do lots of data analysis, including database analytics as a special case.
If you want it to be web-based,
shiny can put many queries/regressions/etc online, with all the statistical modelling power of R.
This still favours statisticians framing the actual analysis, but given how bad we are at statistics as a species, this might be considered a feature not a bug that it requires you to pass the low-bar of understanding simple statistical software.
Glamorous Toolkit is the moldable development environment. It is a live notebook. It is a flexible search interface. It is a fancy code editor. It is a software analysis platform. It is a data visualization engine. All in one. And it is free and open-source under an MIT license.
Tableau provides commercially-supported dashboards. An interesting example of this is the Mapping Police Violence project. It highlights both the insight you can get from this kind of visualisation (Wow they kill a lot of people in the USA!) and also the dangerous limitation in these dashboards i.e. straight-up graphs of reported data do not solve difficult statistical modelling problems such as accounting for sampling bias. Although they might give the impression that this problem is solved.
Developed by airbnb, now an Apache product.
tl;dr autogenerates dashboards based on your database, making it look like you have been doing something other than just collecting random crap.
Apache Superset is a data exploration and visualization web application.
- A wide array of beautiful visualizations to showcase your data.
- A state of the art SQL editor/IDE exposing a rich metadata browser, and an easy workflow to create visualizations out of any result set.
- Out of the box support for most SQL-speaking databases
- [other keywords that only boring bizdev types care about and no one real ever needs]
blazer is a dashboarding/interactive query UI.
- Multiple data sources - PostgreSQL, MySQL, Redshift, Mongodb…
- Variables - run the same queries with different values
- Checks & alerts - get emailed when bad data appears
- Audits - all queries are tracked
- Security - works with your authentication system
- Robust and clearly laid out framework. Supports proper database for application metadata.
- Feature-rich with easy user, query, segment & dashboard management & classification.
- Supports Google SSO, Slack, Email integration.
- Framework is Java based. Any customisation will require dev activities from our end.
Database Flow is an open source self-hosted SQL client, GraphQL server, and charting application that works with your database.
Visualize schemas, query plans, charts, and results.