I loved D3 until I used highcharts. I find highscharts just fits the general case better and has options that are straightforward to enable/implement, comparatively.
Here's a completely worthless comparison article (one of many):
The guide does a good job of, "here's some concept, explained in order". But after finished reading I'm left with the question, "So how do I start?" (especially making use of the concepts already explained in sequence, e.g. d3-scale -> d3-shape -> d3.selection)
It's like reading a list of concepts for some new programming language, and then you get the idea, but then there's no, "You need to download the IDE here, create a Main.mylang file, and type func main(args) {...}, and click Run"
Thought I'd drop this here: site I helped create that uses d3 to create interactive visualizations from csv files https://www.sizzleanalytics.com/