Categories
Discover "Pro D3.js", a new book to improve your JavaScript data visualizations
Last published on November 27, 2019 by Marcos Iglesias
D3.js is the de facto standard JavaScript library for building interactive data visualizations on the Web. When beginning a new D3.js project, developers usually start by taking one of the community's many examples and using it to jumpstart new work. This is a convenient way to get something working fast so that they can iterate over it. However, by working this way, you soon struggle to maintain, extend, or modify your charts. D3.js examples are made to demonstrate implementations and techniques, not to ship them to production.
Discover "Pro D3.js", the new book that walks you through the creation of maintainable, modular, and testable charts. You will also learn how to package and document your visualizations, producing open-source libraries. Read on to learn more about the book and its contents.
About the book
"Pro D3.js" is a book published by Apress that helps you create professional-grade data visualizations and to package them into a library that you can distribute as an npm package. You'll begin by creating a production-ready chart using D3.js and ES2015+, and encapsulating its code using the Reusable API pattern. Then, you will move on to using and extending Britecharts, the high-level charting library based on the Reusable API pattern. You will discover how to write tests, document, and build your charts to create a charting library you can release into the npm repository. Finally, you'll explore how to use D3.js along with React applications. This book is your launching pad to start refactoring D3.js code, composing complex data visualizations from small components, working as a team with other developers, and integrating your charts with a Continuous Integration (CI) system. With Pro D3.js, you'll become an accomplished D3.js developer in no time! The book is 223 pages long and packed with lots of content and code examples. You can order it now in Softcover or eBook edition, and you can find it in Amazon.com, APress, Google Play, or read it in O'Reilly Learning.
The contents
We have divided this book into 12 chapters. Here is a summary of them:
- Introduction to Data Visualizations with D3.js: Describes why D3.js and ES2015+ are the best options for creating data visualizations for the Web.
- An Archetypal D3.js Chart: Analyzes a typical D3.js chart example, walking through its code and reviewing the benefits and drawbacks of the usual approach.
- D3.js Code Encapsulation and APIs: Introduces different strategies developers use to encapsulate D3.js code, illustrating them with real-world library examples and advising how to pick one of them.
- The Reusable API: Presents this code pattern, which allows composable, extendable, configurable, and testable D3.js code encapsulation. It also discusses its advantages and drawbacks and how to overcome them.
- Making the Bar Chart Production-Ready: Walks through the steps necessary to take the initial archetypal example and transform it into a professional and reusable chart.
- Britecharts: Introduces Eventbrite's charting library, a set of charts and support components that follow the previous principles to help developers explore and interpret data.
- Using and Customizing Britecharts: Goes deep in the day-by-day use of Britecharts, showing how to compose the library components together to create compelling data visualizations.
- Extending a Chart: Extends the previous chapter by teaching how to enhance Britecharts, modifying a chart and its documentation, and sending a pull request to contribute to the project.
- Testing Your Charts: Reviews on how to leverage the Reusable API pattern to test-drive a chart, using the initial bar chart as an example.
- Building Your Library: Illustrates how to develop and publish an open-source charting library using Webpack, Babel, and npm.
- Creating Documentation: Demonstrates the generation of documentation from source code comments, using GitHub Pages to host the docs and ESLint to enforce annotations.
- Using Your Library with React: Explores how to use D3.js within React.js applications, exploring different strategies and putting into practice one of them.
Why me?
I am a Senior Software Engineer with a decade history of building user interfaces and dashboards at B2B and B2C companies. I am passionate about creating interactive data visualizations and dashboards using D3.js. My experience releasing Britecharts and Britecharts-React, Eventbrite's charting libraries based in D3.js, gave me insights about creating, documenting, and publishing libraries as open-source software. Before this book, I have written blog posts for Smashing Magazine, Eventbrite's Engineering Blog, and Heart Internet.
Why "Pro D3.js" might be for you
We aimed this book for professional JavaScript developers that need to level up their D3.js code quality. If you have issues taming the complexity and maintaining your D3.js data visualizations, this book is definitely for you. Pro D3.js will also help you if you find yourself in one of these situations:
- You are a developer that knows the fundamentals of D3.js coding, and you have some experience creating and modifying D3.js charts. Now, you are wondering how to make your code more modular, extensible, and maintainable.
- You are an experienced frontend developer that wants to create tests for your charts. You want to have test coverage so that you can refactor your D3.js code and add it to your CI system.
- You are a data scientist, data visualization engineer, or frontend developer that needs to maintain many charts with diverse quality and wants to avoid going crazy in the process.
- You are a senior developer or team lead that needs to allow different team members or several teams to collaborate with the same D3.js codebase. Thus, you want a structured and error-safe way of coding chart components.
Get “Pro D3.js” now from Amazon.com, APress, Google Play or read it in O'Reilly Learning
Limited time only! You can get the eBook version of “Pro D3.js” for only $7!!! Use the code CYBERWEEK19 when visiting the APress site.