D3.js
Hacker ApprovedRanked 8 of 24 JavaScript libraries by recommenders
Free JavaScript library people pick for fully customized, interactive data visualizations, often paired with Observable. Common caveat: it struggles with very large datasets and networks.
Free JavaScript library people pick for fully customized, interactive data visualizations, often paired with Observable. Common caveat: it struggles with very large datasets and networks.
17 people gave an opinion
- recommend it
- 13
- criticize it
- 4
- approval share
- 76%
Recommended in 8 of 13 months
- November 2025: recommended
- December 2025: not recommended
- January 2026: recommended
- February 2026: not recommended
- March 2026: recommended
- April 2026: recommended
- May 2026: recommended
- June 2026: not recommended
- July 2026: recommended
- August 2026: recommended
- September 2026: not recommended
- October 2026: recommended
- November 2026: not recommended (month in progress)
Why it carries the badge
- 13 people recommend itNeeds 10 or more, met.
- 3.3 recommenders for every criticNeeds 2 to 1 or better, met.
- Recommended in 8 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Best for custom visualizations
“I think D3 is better for custom data visualizations, but we'd need to build most editor behavior ourselves”
Comment from 21 Aug 2026 in “Show HN: Visual way to understand things in parallel” “great libraries for infinite customization (D3, Observable Plot) - but they struggle at scale”
Comment from 21 Jan 2026 in “Show HN: ChartGPU – WebGPU-powered charting library (1M points at 60fps)” “anything more than their own handpicked examples and you're better off using d3 or yfiles”
Comment from 9 Jul 2026 in “Show HN: Microsoft releases Flint, a visualization language for AI agents” - Comment from 9 Jul 2026 in “Show HN: Microsoft releases Flint, a visualization language for AI agents”
Loved and called the best option
“D3 is the only charting library that I've loved.”
Comment from 6 Nov 2025 in “I analyzed the lineups at the most popular nightclubs” “Not any more, ${YourAIAgent} + D3 is awesome.”
Comment from 23 Oct 2026 in “Can we replace a $150k Looker with a bucket of HTML files?” “D3 and Leaflet were such cool tech!”
Comment from 8 May 2026 in “GeoJSON” - Comment from 9 Jul 2026 in “Show HN: Microsoft releases Flint, a visualization language for AI agents”
Pretty interactive, animated visuals
“I also was gripped by a few cool visual animations I could do in d3 and svg to help tell the story.”
Comment from 10 Aug 2026 in “Show HN: Visual essay made in D3.js about The Odyssey being composed for sailors” “it works great in conjunction with observable and d3js for pretty interactives!”
Comment from 17 Mar 2026 in “Pyodide: a Python distribution based on WebAssembly” “several very lovely visualizations back on the D3.js site”
Comment from 24 Jan 2026 in “Maze Algorithms (2017)”
What people warn about
Each mark is one comment
Slow with large data or networks
“all the performance hacks I had to do to get 0.01% of the data to render half as smooth using d3”
Comment from 21 Jan 2026 in “Show HN: ChartGPU – WebGPU-powered charting library (1M points at 60fps)” “great libraries for infinite customization (D3, Observable Plot) - but they struggle at scale”
Comment from 21 Jan 2026 in “Show HN: ChartGPU – WebGPU-powered charting library (1M points at 60fps)” “it is really slow with big networks, and the force directed algorithm is far from the best”
Comment from 17 Nov 2025 in “A graph explorer of the Epstein emails”
Other JavaScript libraries people recommend
The four most recommended other JavaScript libraries, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| jQuery | 111 | 48 | 70% | 12 | 16 yrs8 owners | Approved |
| Picknplace.js | 58 | 26 | 69% | 1 | — | — |
| Alpine.js | 50 | 16 | 76% | 11 | 1 yr4 owners | Approved |
| Effect (TypeScript library) | 38 | 16 | 70% | 10 | 2 yrs3 owners | Approved |
| D3.jsThis page | 13 | 4 | 76% | 8 | — | Approved |
What people said
17 of the 18 comments that mention it, newest first. Each links to the original comment.
“Not any more, ${YourAIAgent} + D3 is awesome.”
“the result is bad/poorly readable”
“I think D3 is better for custom data visualizations, but we'd need to build most editor behavior ourselves”
“I also was gripped by a few cool visual animations I could do in d3 and svg to help tell the story.”
“sometimes with a pinch of D3.js”
“That's the best option for now.”
“my conclusion was to stop looking and use D3 or custom code”
“anything more than their own handpicked examples and you're better off using d3 or yfiles”
“I thought D3.js was very verbose and time consuming”
“D3 and Leaflet were such cool tech!”
“D3 is definitely the safest bet for fine-tuning those repulsion forces”
“it works great in conjunction with observable and d3js for pretty interactives!”
“several very lovely visualizations back on the D3.js site”
“great libraries for infinite customization (D3, Observable Plot) - but they struggle at scale”
“all the performance hacks I had to do to get 0.01% of the data to render half as smooth using d3”
“it is really slow with big networks, and the force directed algorithm is far from the best”
“D3 is the only charting library that I've loved.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.