Well, D3 is not a set of tools for charts (alike matplotlib, ggplot or so), but a low-level library to create your data visualization from scratch. Depending on your goal, it may or may not be what you need.
Yes, and I think that's the correct expectation to set. I don't even disagree with its design choices - I like the composability of pure functions as much as the next guy.