liveBook · Manning

Visualization

As explained in D3.js in Action, Third Edition

Data visualization is the representation of data through graphical or visual forms to communicate patterns, relationships, or values.

Data visualization represents data with graphical forms so people can see patterns, relationships, values, and a story. A useful visualization balances visual interest with legibility: the audience should focus on what the data communicates, not merely on decorative complexity. section 1.3

On the web, D3.js supports custom, dynamic, and interactive visualizations. It can bind data to graphical elements rather than restricting a project to predefined chart types, making it suited to responsive dashboards, research prototypes, scrollytelling, maps, networks, and unusual visual forms. section 1.0 section 1.1.1 section 1.1.2

A practical visualization workflow moves from prepared data to an interpretable interface:

  • Gather, clean, format, and explore a dataset; identify quantitative and qualitative attributes and the story worth communicating. section 1.1.2 section 14.7
  • Sketch a layout, then break its visual channels and geometry into smaller implementation blocks. section 14.0 section 14.7
  • Load and measure data, bind it to DOM elements, and use scales to translate values into positions, sizes, colors, or other visual attributes. section 3.0
  • Build the interface with HTML, CSS, JavaScript, and usually SVG or Canvas; add interactions that answer meaningful user questions. section 1.2 section 14.7
  • Explain the chart’s purpose and encodings, label controls and axes, simplify prose, and check whether people can interpret the result. section 1.3 section 10.2.1

Choosing D3 for a custom project

A business dashboard may need to reveal customer behavior in a fast, interactive, shareable form that a business-intelligence tool cannot provide. A scrollytelling project may instead transform graphics on scroll, reveal details on mouse events, and adapt to screen size. These needs favor D3 over tools aimed at quick exploration or simple standard charts. section 1.1.1 section 1.1.2

Accessibility is part of visualization, not an afterthought. Provide surrounding context and instructions; state what marks represent and what position, size, and color mean; include legends and axis labels; and keep text easy to read. Responsive layouts must also preserve readable labels on smaller screens. section 10.2.1

Figure 3.1 The D3 data workflow
figure

Use the D3 data workflow diagram to connect source data, data preparation, binding, scales, and rendered visual elements. section 3.0

How D3.js in Action, Third Edition covers it

How deep it goes
Develops an end-to-end project workflow from data preparation and encoding through interaction, accessibility, and custom layouts.
Examples
Uses customer dashboards, LGBTQ+ scrollytelling, network interactions, musical-score graphics, cetacean scatterplots, and a Van Gogh radial project.
What it assumes
Teaches foundational SVG while assuming or recommending basic HTML, CSS, JavaScript, modules, method chaining, and object manipulation.
What you can do after
Build it from scratch by preparing data, mapping it to visual attributes, rendering graphics, and planning meaningful interactions.
How it connects
Connects data binding, scales, SVG, Canvas, DOM, visual channels, accessibility, and responsive design.

Also explained in

Compare how 16 books explain visualization →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of D3.js in Action, Third Edition. The section links point to the parts of the book it draws on.