D3.js JavaScript data visualization package goes modular

D3.js lets you combine modules as desired to support independent release cycles

D3.js, a tool for JavaScript data visualization, has been made modular in an upgrade released this week.

Version 4.0 of D3 now features many libraries designed to work together. "You can pick and choose which parts to use as you see fit," according to release notes. "Each library is maintained in its own repository, allowing decentralized ownership and independent release cycles. The default bundle combines about 30 of these micro-libraries."

D3 leverages data-driven DOM manipulation via HTML, CSS, and SVG. Arbitrary data can be bound to the DOM, and data-driven transformations can be applied to a document.

D3 is a visualization API intended to be the lowest layer of visualization tools, as in the visualization "kernel," or "standard library," developer Mike Bostock said. The software can be used for custom interactive graphics and as the basis for higher-level visualization tools.

While D3 used to use unicode variable names and string literals, version 4.0 uses only ASCII variable names and string literals to avoid encoding issues. A built-in asynchronous queue, meanwhile, enables loading of files in parallel.

Version 4.0 no longer has the d3.geom.polygon constructor; developers instead pass an array of vertices to polygon methods. The quadtree method has been replaced as well. "[Version] 4.0 removes the concept of quadtree generators (configurable functions that build a quadtree from an array of data); there are now just quadtrees, which you can create via d3.quadtree and add data to via quadtree.add and quadtree.addAll," release notes state.

Selections, for data-driven transformation of the DOM, and transitions, for animating DOM changes, now are immutable in version 4.0, providing a cleaner interface. The axis component, which provides human-readable reference marks for scales encodings, has a better default appearance, and version 4.0 features better interaction for brushing.

The modularity in version 4 makes micro-libraries "easier to understand, develop and test," according to release notes. "They reduce the distinction between a core module and a plugin, and increase the pace of development in D3 features." Developers can release new features as standalone libraries for use with D3, but those who aren't interested in modularity still can use the default bundle.

Join the newsletter!

Error: Please check your email address.
Rocket to Success - Your 10 Tips for Smarter ERP System Selection

Tags programming

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Paul Krill

InfoWorld
Show Comments

Cool Tech

Breitling Superocean Heritage Chronographe 44

Learn more >

SanDisk MicroSDXC™ for Nintendo® Switch™

Learn more >

Toys for Boys

Family Friendly

Panasonic 4K UHD Blu-Ray Player and Full HD Recorder with Netflix - UBT1GL-K

Learn more >

Stocking Stuffer

Razer DeathAdder Expert Ergonomic Gaming Mouse

Learn more >

Christmas Gift Guide

Click for more ›

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Walid Mikhael

Brother QL-820NWB Professional Label Printer

It’s easy to set up, it’s compact and quiet when printing and to top if off, the print quality is excellent. This is hands down the best printer I’ve used for printing labels.

Ben Ramsden

Sharp PN-40TC1 Huddle Board

Brainstorming, innovation, problem solving, and negotiation have all become much more productive and valuable if people can easily collaborate in real time with minimal friction.

Sarah Ieroianni

Brother QL-820NWB Professional Label Printer

The print quality also does not disappoint, it’s clear, bold, doesn’t smudge and the text is perfectly sized.

Ratchada Dunn

Sharp PN-40TC1 Huddle Board

The Huddle Board’s built in program; Sharp Touch Viewing software allows us to easily manipulate and edit our documents (jpegs and PDFs) all at the same time on the dashboard.

George Khoury

Sharp PN-40TC1 Huddle Board

The biggest perks for me would be that it comes with easy to use and comprehensive programs that make the collaboration process a whole lot more intuitive and organic

David Coyle

Brother PocketJet PJ-773 A4 Portable Thermal Printer

I rate the printer as a 5 out of 5 stars as it has been able to fit seamlessly into my busy and mobile lifestyle.

Featured Content

Product Launch Showcase

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?