V5 Reusable Examples - Nested data, Chart (line) series DDM - Example 5.2
This example demonstrates a reusable multi-line chart with a Drop Down Menu to filter fruit sales data by year. It uses D3.js v5 to render an SVG chart with axes and animated line series, nested data structures, and a menu that updates the visualization. The code follows a modular, reusable chart pattern inspired by Mike Bostock's guidelines and the ProD3.js approach, employing D3's `scaleTime`, `scaleLinear`, `axisBottom`, `axisLeft`, and `scaleOrdinal` APIs to manage scales, axes, and color encoding.
AI-generated descriptionAn exploration of nesting data. Nested multi-line chart with Drop Down Menu to filter data.
Using the tutorial and series of charts described here:
https://amber.rbind.io/2017/05/02/nesting/
D3.js version: v5.
D3 pattern used:
A vanilla HTML implementation.
Reusable structure:
- derived from Mike Bostock's Towards Reusable Charts (https://bost.ocks.org/mike/chart/) as the source of the foundational principles.
- But uses the ProD3 pattern (Pro D3.js Use D3.js to Create Maintainable, Modular, and Testable Charts by Marcos Iglesias https://www.apress.com/gp/book/9781484252024) as the basis for the charts.
Addtional help from and aknowledgement to:
Mastering D3.js by Castillo Pablo Navarro. https://www.packtpub.com/web-development/mastering-d3js
Data Visualization with D3.js Cookbook by Nick Qi Zhu https://www.packtpub.com/product/data-visualization-with-d3-js-cookbook/9781782162162