Python Dashboard
This was my first attempt at creating a dashboard using python. The purpose of this Python-based notebook is to create a portfolio item that explores the labor force survey data. The reason for deciding to expand on this in-class exercise is to familiarize myself on how to use python libraries and commands to create an interactive dashboard consisting of bar charts but also attempting to create a sunburst. Primary advantages of learning and using python is to work with large datasets and databases, cross-platform compatibility, customization and flexibility along with it's rich ecosystem of libraries and easy of use.​​
I downloaded the data table from StaCanada. The table was customized on the website before downloading it as a .csv file, to make it easier to clean and prepare it for analysis. I made sure to have it in the long format to ensure easy access in my script. For the time being, I have limited the scope of this project to only 1008 data points that reflect Ontario, Alberta, New Brunswick and Canada aggregates from 2017 to 2023. The same project can be repurposed to include the data for all the provinces.​ It also only includes the high level data for goods-producing sector, service-producing sector and unclassified along with the Total across all industries. It can be further scaled to include specific industry data in each category. The Labour Force categories used are Employment, Unemployment and Total Labor Force. Employment data can be further classified into full-time and part-time which is available on the Stat-Canada's website. Unemployment rate is also available and can be added for further analysis.


Above is a wireframe of the dashboard, created using individual charts in a whiteboarding tool.
The main purpose is to analyze the gender parity across industries and across provinces to compare unemployment trends with the total labour force trends. This can help us answer these questions:
-
What are the overall trends in unemployment compared to increase (or decrease) in total labour force?
-
Are women willing to join male dominated industries? (by looking at the total female labor force across industries)
-
Is the Labor market welcoming them or is biased against them? (by looking at the unemployment rates across industries for each gender)
-
Are some provinces more progressive than others? (Comparing data across Canada and across different provinces)
Primary intention of this dashboard is to help policy makers understand the current labour market landscape keeping in mind gender parity and introduce policies to create a more equitable work culture across the country. While this dashboard is a starting point, data related to ethnicity and nationality as well as pay should be considered before drafting these policies.

My key learnings during this dashboard design was how to clean and organize the data for a sunburst in python as well as the interactions. My goal eventually would be to learn using filters in a dashboard. I also used this opportunity to explore new visualization libraries in python (pyplot.express and plotly.graph_objects). An observation I made in this dasboard is that charts don't have individual chart zoom but for the whole plot and each figure allows individual interactions that are not linked to each other. Another thing to note is that the chart title and legends do not display as they were not part of the chart traces but instead of layout. They would need to be individually added for each subplot if we still wanted them (Which proves critical especially for bar charts & trendlines.) Lastly, the stacked bar no longer appears so as the barmode is also declared during layout instead of in the trace.