histogram
An interactive histogram displays aggregate survey data grouped by student subject preference, with bars representing selectable metrics like average height, stress, or expense. Using D3 v5, a dropdown menu generated from the data fields triggers a selection change, updating the y-axis scale and re-rendering bar positions and heights via attribute updates. The visualization uses `d3.nest()` and `d3.rollup` to compute averages and sums from the JSON source, with axes created using `d3.axisBottom` and `d3.axisLeft`.
AI-generated descriptionInteractive bar chart example
In this visualization, the data that's rendered in the view changes because of user interaction
Steps
- Find good example of update loop
- Write a concept that uses interaction (changing scales?)
- Set up basic chart
- Set up interacion
- Make x-axis interactive so remove and enter are also needed
Concept
A chart showing distribution or relation between to variables. The vriables can be chosen through a dropdown menu resulting in a rerendering of datapoints and axis.
- Group students by subject interest on x axis.
- Get data from different vars on y axis
Notes
- Note that d3 has a new way of handling enter, update and exit explicitly as explained in this article.
- The options in the form are generated from the data using a data join
- The scales, the data and the selected opton are global. I found that to be nicer than to keep passing them everywhere
- If you want to add a new option to this interactive graph, all you have to do is add a new computed variable in the prepareData module and everything else will happen automatic