Skip to main content
100%

Exploring survey data interactively - d3V6

✓ Published1🌍 Public
LLaurens
Last edited Nov 9, 2020
Created on Nov 3, 2020

An interactive bar chart displays survey data grouped by study preferences, letting users select from a dropdown menu to change the y-axis variable. The visualization updates scales, axes, and bar heights dynamically as users explore metrics like average height, stress, or sibling counts. Using d3.rollup to aggregate data and the general update pattern with enter and exit selections, the chart re-renders smoothly. The SVG-based visualization loads JSON survey data and generates dropdown options automatically from dataset fields.

AI-generated description

Interactive bar chart example

In this visualization, the data that's rendered in the view changes because of user interaction

Differences from forked work

  • This uses d3V6 which means .nest() had to be replaced with .rollup() using the d3 migration guide

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

Inspiration

MIT Licensed

Similar vizzes