Dashboard experiments with Tableau, Streamlit and JavaScript (Part 1)
Hello! This is my first article. Just in case you don't know me, I'm a developer who specialises in data visualisation. I've built a fair number of data visualisations using JavaScript, D3 and other libraries and currently work for Flourish where I help to build their lovely templates.
I've just started a new newsletter and will present some of the content here. If you'd like to stay up to date you can sign up.
My particular interest is in programming tools, mainly stemming from R, Python and JavaScript. For example, tools such as R's Shiny and ggplot2, Python's Streamlit and Dash and in the JavaScript world, the likes of D3, Chart.js and Leaflet.
I love experimenting with different ways of building charts and dashboards. I'm currently playing around with building interactive dashboards and finding the easiest way to build them.
Streamlit
For example, I've been trying out Streamlit. This is a fantastic Python library for building interactive charts and dashboards and the amount of code you need to write is probably as minimal as it gets.For creating a simple interactive data exploration tool, Streamlit is a fantastic tool. However it's quite easy to come up against limits. For example, I had a go at creating an interactive map using its map component. This got me so far, and I found that I had to use it's slightly lower level pydeck_chart component which requires deeper knowledge.
JavaScript
I've spent much more time in the JavaScript world than R or Python and I think a JavaScript only solution would be just a little more complex (and much more flexible). And that's where I think I can provide value in these articles.
Recommended by LinkedIn
My plan over the coming months is to experiment with ways of building interactive dashboards and to share with you the easiest and most cost effective ways of doing this.
For example I'm currently experimenting with a JavaScript-based dashboard that visualises RNLI lifeboat data and have found a solution that lets you interactively explore a dataset with over 40,000 rows.
This doesn't use a backend database, nor does it need to load the entire dataset. In fact, it can be statically hosted using a free service such as Surge or Netlify. I'll share more details in my next email, but for now here's a preview.
Visualising Data with JavaScript course
I've published a video-based course that teaches you how to build maps, charts, data stories and data dashboards using JavaScript. Sign up to my newsletter for a discount.
In my next article I'll write a bit more about how I built the RNLI interactive map in three different ways (Tableau, Streamlit and JavaScript).
Until then,
Peter