1 min read

Yesterday, the team behind D3.js rolled out D3.js 5.8.0. Data-Driven Documents or D3 is a JavaScript library using which you can create dynamic, interactive data visualizations in web browsers.

Updates are introduced in the following modules:

d3-force

  • The iterations argument is added to simulation.tick.
  • A bug is fixed when initializing nodes with fixed positions.

d3-scale

The following new features are added:

  • The domain and range convenience constructors for all scale types
  • Default constructors for sequential and diverging scales
  • The d3.tickFormatReturns function, a number format function for displaying a tick value
  • The d3.scaleSymlog function, which constructs a new continuous scale with the specified domain and range
  • Transformed sequential scales, for example, d3.scaleSquentialLog
  • Transformed diverging scales, for example, d3.scaleDivergingLog
  • d3.scaleSequentialQuantile for p-quantiles
  • scale.unknown for all scale types
  • Unlimited band.paddingOuter and point.padding

d3-selection

  • The selection.join method is added, a convenient alternative to the more explicit selection.enter, selection.exit, selection.append, and selection.remove.
  • selection.order is updated to enforce relative position, rather than exact siblings.
  • Vendor fallback for element.matches in selection.filter and d3.matcher is removed.

d3-transition

  • The transition.end is added, which returns a promise that resolves when every selected element finishes transitioning.
  • A cancel event is added to transition.on.
  • Performance of transition.style and transition.attr is improved

To read the full list of updates on the GitHub repository of D3.js.

Read Next

Introducing Cycle.js, a functional and reactive JavaScript framework

Introducing Howler.js, a Javascript audio library with full cross-browser support

16 JavaScript frameworks developers should learn in 2019