Data Visualization with D3 4.x Cookbook, 2/e (Paperback)

Nick Zhu



Key Features

  • Learn about D3 4.0 from the inside out and master its new features
  • Utilize D3 packages to generate graphs, manipulate data, and create beautiful presentations
  • Solve real-world visualization problems with the help of practical recipes

Book Description

This book gives you all the guidance you need to start creating modern data visualizations with D3 4.x that take advantage of the latest capabilities of JavaScript.

The book starts with the basic D3 structure and building blocks and quickly moves on to writing idiomatic D3-style JavaScript code. You will learn how to work with selection to target certain visual elements on the page, then you will see techniques to represent data both in programming constructs and its visual metaphor. You will learn how map values in your data domain to the visual domain using scales, and use the various shape functions supported by D3 to create SVG shapes in visualizations.

Moving on, you ll see how to use and customize various D3 axes and master transition to add bells and whistles to otherwise dry visualizations. You ll also learn to work with charts, hierarchy, graphs, and build interactive visualizations. Next you ll work with Force, which is one of the most awe-inspiring techniques you can add to your visualizations, and you ll implement a fully functional Choropleth map (a special purpose colored map) in D3.

Finally, you ll learn to unit test data visualization code and test-driven development in a visualization project so you know how to produce high-quality D3 code.

What you will learn

  • Get a solid understanding of the D3 fundamentals and idioms
  • Use D3 to load, manipulate, and map data to any kind of visual representation on the web
  • Create data-driven dynamic visualizations that update as the data does
  • Leverage the various modules provided by D3 to create sophisticated, dynamic, and interactive charts and graphics
  • Create data-driven transitions and animations within your visualizations
  • Understand and leverage more advanced concepts such as force, touch, and Geo data visualizations

About the Author

Nick Zhu is a professional programmer and data engineer with more than a decade experience in software development, big data, and machine learning. Currently, he is one of the founders and CTO of - meta search engine for online shopping. He is also the creator of dc.js a popular multidimensional charting library built on D3.

Table of Contents

  1. Getting Started with D3.js
  2. Be Selective
  3. Dealing with Data
  4. Tipping the Scales
  5. Playing with Axes
  6. Transition with Style
  7. Getting into Shape
  8. Chart Them Up
  9. Lay Them Out
  10. Interacting with Your Visualization
  11. Using Force
  12. Knowing Your Map
  13. Test Drive Your Visualization
  14. Building Interactive Analytics in Minutes



  • 從內部了解D3 4.0並掌握其新功能

  • 利用D3套件生成圖表、操作數據並創建美麗的演示文稿

  • 通過實用的示例解決現實世界的可視化問題


本書為您提供了開始使用D3 4.x創建現代數據可視化的所有指導,並充分利用JavaScript的最新功能。





  • 深入了解D3的基礎知識和慣用語法

  • 使用D3將數據加載、操作並映射到Web上的任何類型的可視表示

  • 創建數據驅動的動態可視化,隨著數據的變化而更新

  • 利用D3提供的各種模塊創建複雜、動態和交互式的圖表和圖形

  • 在可視化中創建數據驅動的過渡和動畫

  • 了解並利用更高級的概念,如力學、觸摸和地理數據可視化


Nick Zhu是一位專業的程序員和數據工程師,擁有十多年的軟件開發、大數據和機器學習經驗。目前,他是Yroo.com的創始人和首席技術官,該網站是一個用於在線購物的元搜索引擎。他還是dc.js的創作者,這是一個基於D3的流行多維圖表庫。


  1. 開始使用D3.js

  2. 精選

  3. 處理數據

  4. 調整比例

  5. 操作軸

  6. 帶有風格的過渡

  7. 形狀設計

  8. 圖表製作

  9. 佈局設計

  10. 與可視化互動

  11. 使用力學

  12. 了解地圖

  13. 測試可視化

  14. 在幾分鐘內構建交互式分析