Question 2 Stacked bar chart
This stacked bar chart visualizes personal electricity consumption across two years for a three-family structure, breaking down usage by account number for each monthly read date. The visualization uses a green and blue color scheme mapped via `d3.scaleOrdinal`, with axes and bars rendered in SVG. Data is transformed using `d3.group` and stacked with `d3.stack` before being drawn as rectangles scaled by `d3.scaleBand` and `d3.scaleLinear`. Hovering highlights bars and shows a tooltip title with kilowatt-hour values, while the chart includes labeled axes and a legend.
AI-generated descriptionA bar chart visualization of my personal electricity consumption dataset. I live in a three family structure and occupy two floors. There is also a common account that supplies the front and back hall lighting as well as the basement and exterrior outlets. It covers a period of two years.
I forked https://vizhub.com/RED98310/a3ea8fbec4b64423a7797a418de4af57?edit=files and stated with that code. I also looked at Most basic stacked barplot in d3.js for how to render the stacked barchart.
I made the following changes from the one last week
- Changed the code to use d3.stack. There was a bug in the previous week bar chart since it wasn't showing account number 2222222222.
- Changed the y axis label to be along the axis and vertical instead of horizontal and at the top to make room for the title.
- Changed the colors to green and blue. I thought they were less jarring.
- Cleaned up the code by grouping calculation of data with the code that added it to the visualization.
- Added a title to the accounts legend per feedback on slack.
Next steps
- Show a tooltip at the top of the bar amount when hovering over.
- Wrap the bar graph around a circle that is a 12 month period.
Unfortunately, I deleted the graph that I started with as part of cleaning up my profile then realized I should have kept it and forked from it per the instructions of the assignmnet. I believe I have captured all the changes.
version 1.3