Summary
This chapter was very heavy with JavaScript and HTML coding and may seem a bit of an overkill at first. However, the process of breaking down individual functions and uses of D3 was done intentionally to ease developers into understanding the basic building blocks that comprise a D3 visualization. While at first it may seem that there is a significant volume of coding needed for a simple visualization, the ability to customize any level of a component will become more valuable as your comfort with D3 increases.
In addition, many templates for D3 are available on D3js (https://d3js.org/) and can be used and manipulated with existing data to view new visualizations without needing to understand the underlying code up front. Once a specific need arises within the visualization, there can be modifications of the code, and that is where the understanding of the architecture of D3 will come into play. This is how the D3 community has grown so quickly in such a short amount of time.
While...