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 PC World newsletter!

Error: Please check your email address.

Tags programming

Our Back to Business guide highlights the best products for you to boost your productivity at home, on the road, at the office, or in the classroom.

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

Paul Krill

InfoWorld
Show Comments

Essentials

Microsoft L5V-00027 Sculpt Ergonomic Keyboard Desktop

Learn more >

Lexar® JumpDrive® S57 USB 3.0 flash drive

Learn more >

Mobile

Lexar® JumpDrive® S45 USB 3.0 flash drive 

Learn more >

Exec

Lexar® JumpDrive® C20c USB Type-C flash drive 

Learn more >

Audio-Technica ATH-ANC70 Noise Cancelling Headphones

Learn more >

HD Pan/Tilt Wi-Fi Camera with Night Vision NC450

Learn more >

Lexar® Professional 1800x microSDHC™/microSDXC™ UHS-II cards 

Learn more >

Budget

Back To Business Guide

Click for more ›

Most Popular Reviews

Latest News Articles

Resources

PCW Evaluation Team

Azadeh Williams

HP OfficeJet Pro 8730

A smarter way to print for busy small business owners, combining speedy printing with scanning and copying, making it easier to produce high quality documents and images at a touch of a button.

Andrew Grant

HP OfficeJet Pro 8730

I've had a multifunction printer in the office going on 10 years now. It was a neat bit of kit back in the day -- print, copy, scan, fax -- when printing over WiFi felt a bit like magic. It’s seen better days though and an upgrade’s well overdue. This HP OfficeJet Pro 8730 looks like it ticks all the same boxes: print, copy, scan, and fax. (Really? Does anyone fax anything any more? I guess it's good to know the facility’s there, just in case.) Printing over WiFi is more-or- less standard these days.

Ed Dawson

HP OfficeJet Pro 8730

As a freelance writer who is always on the go, I like my technology to be both efficient and effective so I can do my job well. The HP OfficeJet Pro 8730 Inkjet Printer ticks all the boxes in terms of form factor, performance and user interface.

Michael Hargreaves

Windows 10 for Business / Dell XPS 13

I’d happily recommend this touchscreen laptop and Windows 10 as a great way to get serious work done at a desk or on the road.

Aysha Strobbe

Windows 10 / HP Spectre x360

Ultimately, I think the Windows 10 environment is excellent for me as it caters for so many different uses. The inclusion of the Xbox app is also great for when you need some downtime too!

Mark Escubio

Windows 10 / Lenovo Yoga 910

For me, the Xbox Play Anywhere is a great new feature as it allows you to play your current Xbox games with higher resolutions and better graphics without forking out extra cash for another copy. Although available titles are still scarce, but I’m sure it will grow in time.

Featured Content

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?