D3.js Visualisation
Overview
This skill provides guidance for creating sophisticated, interactive data visualisations using d3.js. D3.js (Data-Driven Documents) excels at binding data to DOM elements and applying data-driven transformations to create custom, publication-quality visualisations with precise control over every visual element. The techniques work across any JavaScript environment, including vanilla JavaScript, React, Vue, Svelte, and other frameworks.
When to use d3.js
Use d3.js for:
-
Custom visualisations requiring unique visual encodings or layouts
-
Interactive explorations with complex pan, zoom, or brush behaviours
-
Network/graph visualisations (force-directed layouts, tree diagrams, hierarchies, chord diagrams)
-
Geographic visualisations with custom projections
-
Visualisations requiring smooth, choreographed transitions
-
Publication-quality graphics with fine-grained styling control
-
Novel chart types not available in standard libraries
Consider alternatives for:
- 3D visualisations - use Three.js instead
Core workflow
🧠 Knowledge Modules (Fractal Skills)
-
- Set up d3.js
-
- Choose the integration pattern
-
- Structure the visualisation code
-
- Implement responsive sizing
-
Bar chart
-
Line chart
-
Scatter plot
-
Chord diagram
-
Heatmap
-
Pie chart
-
Force-directed network
-
Tooltips
-
Zoom and pan
-
Click interactions
-
Quantitative scales
-
Ordinal scales
-
Sequential scales
-
Data preparation
-
Performance optimisation
-
Accessibility
-
Styling
-
references/
-
assets/