d3-viz

Installation
Summary

Custom, interactive data visualisations with fine-grained control over visual elements, transitions, and interactions.

  • Covers core d3 patterns including scales, axes, data binding, and transitions across bar charts, line charts, scatter plots, chord diagrams, heatmaps, force-directed networks, and more
  • Two integration approaches: direct DOM manipulation for complex interactive visualisations, or declarative rendering via your framework (React, Vue, Svelte, vanilla JS)
  • Includes responsive sizing strategies using ResizeObserver or window resize listeners, plus interactivity patterns for tooltips, zoom/pan, click handlers, and staggered animations
  • Best practices for data preparation, performance optimisation with large datasets, accessibility, and styling consistency
SKILL.md

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
Related skills
Installs
307
GitHub Stars
37.3K
First Seen
Jan 19, 2026