Exploring survey data interactively - both axes
✓ Published0🌍 Public
RRamon96
Last edited Nov 26, 2019
Created on Nov 26, 2019
Forked from Exploring survey data interactively - both axes
This interactive scatterplot from a survey dataset lets users explore relationships between variables by selecting both the x- and y-axis fields via dropdown menus. Using D3.js v5 with SVG rendering, the visualization updates dynamically through the general update pattern, re-nesting data with `d3.nest().rollup()` and re-drawing bars and axes when either selection changes. The code employs d3.scaleBand and d3.scaleLinear for the axes.
AI-generated descriptionDynamic axes using the update pattern example
In this visualization, the data that's rendered in the view changes because of user interaction
Steps
- Make the nesting dynamic
- Nest on health, stress dynamically
- 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 a variable on the 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
- Observe how prepareData module now exports 2 functions separately which we can use to have greater control over the transformation of data from our index.js file.
Inspiration
MIT Licensed