Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Learn D3.js

You're reading from   Learn D3.js Create interactive data-driven visualizations for the web with the D3.js library

Arrow left icon
Product type Paperback
Published in May 2019
Publisher Packt
ISBN-13 9781838645571
Length 650 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Helder da Rocha Helder da Rocha
Author Profile Icon Helder da Rocha
Helder da Rocha
Arrow right icon
View More author details
Toc

Table of Contents (13) Chapters Close

Preface 1. Introduction FREE CHAPTER 2. Technical Fundamentals 3. Quick Start 4. Data Binding 5. Manipulating Data and Formatting 6. Scales, Axes, and Colors 7. Shape and Layout Generators 8. Animation and Interactivity 9. Visualizing Hierarchical Data 10. Visualizing Flows and Networks 11. Visualizing Geographical Data 12. Other Books You May Enjoy

Grouping data with d3.nest()

The d3-collection module contains the d3.nest() function, which is widely used for grouping. It can be replaced by the d3.group and d3.rollup() functions from the d3-array module, but, at the time of writing, it's not a ready-to-use replacement yet, for the following reasons:

  • You still need to convert the resulting map or set into an array before using it, since the current version of selection.data() only supports arrays
  • With one level of grouping, the spread operator or the Array.from() function can be used to obtain an array, but it's harder if you need to group and sort multiple levels
  • Generator functions in other D3 modules and plugins that require nested structures frequently assume the nested object structure that's produced by d3.nest() as the default

Mike Bostock suggests creating reusable functions for nesting and rollup...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime