Live data from Hacker News

D3 7.0

github.com

31–40 of 65 posts

Re: D3 7.0

#31
post #19

Used this in a data viz class and I’d say it’s overkill for most visualizations. Also very difficult to learn and frustrating to implement with all the “enter, exit” stuff. Excel, Tableau, etc so much easier and most of what you need to do visualizations in the corporate setting. Obviously it’s excellent for very specialized unusual visualizations but it’s rare those are really needed.

Apples and oranges.

D3 is a low level visualisation library where you write code.

Excel/Tableau are business tools.

Re: D3 7.0

#32
post #30
post #24

Earlier quoted context omitted.

You make my point. What better environment to learn and twiddle, than a reactive, constantly reevaluating interactive notebook?

I guess it depends on your goal. If your goal is to learn how to code a nice reactive environment like a notebook is great. If your goal is to learn how to take a library and use it in a piece of software to release to the world, the notebook is next to useless.

If you think that the trivial differences between the two environments makes either of them useless to learn the other, franky I'll doubt you'll have the skill to learn D3 properly at all.

Taking a dom node and hooking it into the dom is not magic in D3. All that obervable does is hook in any dom node you return for you.

Re: D3 7.0

#33
post #26
post #24

Earlier quoted context omitted.

You make my point. What better environment to learn and twiddle, than a reactive, constantly reevaluating interactive notebook?

Whatever environment each user prefers. Being softlocked into Observable is not a pro. That's like trying to force every vim user into Jetbrain IDEs (both are great, not trying to start a flamewar here). Sure an IDE will have more features (like Observable vs simple HTML file), but it's important to understand different people have different ways of doing things.

We're talking about a javascript repl here, don't blow it out of proportion. The things transfer trivially between the envionments. If having a javascript repl is such a show stopper for learning D3 for you, maybe learn javascript first.

Re: D3 7.0

#34
post #33
post #26

Earlier quoted context omitted.

Whatever environment each user prefers. Being softlocked into Observable is not a pro. That's like trying to force every vim user into Jetbrain IDEs (both are great, not trying to start a flamewar here). Sure an IDE will have more features (like Observable vs simple HTML file), but it's important to understand different people have different ways of doing things.

We're talking about a javascript repl here, don't blow it out of proportion. The things transfer trivially between the envionments. If having a javascript repl is such a show stopper for learning D3 for you, maybe learn javascript first.

But if the example transfers trivially, why is there no convenient "download example project" button that offers an archive containing all the necessary files I need to run the example?

Re: D3 7.0

#36

The one critique I have of D3 is that it is becoming increasingly closely paired with Observable, such that when I'm searching for examples of how to make something in d3, I can only find Observable examples that require the Observable runtime in order to function properly. I think the examples should have a JS native version in addition to the Observable implementation.

Someone should make an open source version of the Observable ecosystem or integrate it into Jupyter tooling better. The notebook format is not encrypted or anything.

Re: D3 7.0

#37
post #19

Used this in a data viz class and I’d say it’s overkill for most visualizations. Also very difficult to learn and frustrating to implement with all the “enter, exit” stuff. Excel, Tableau, etc so much easier and most of what you need to do visualizations in the corporate setting. Obviously it’s excellent for very specialized unusual visualizations but it’s rare those are really needed.

You actually don't have to use enter and exit and I agree it is cumbersome and unnecessary although I understand the desire for inband and out of band separation... https://medium.com/d3js-tutorials/d3-without-enter-91934575d...

Re: D3 7.0

#38
post #19

Used this in a data viz class and I’d say it’s overkill for most visualizations. Also very difficult to learn and frustrating to implement with all the “enter, exit” stuff. Excel, Tableau, etc so much easier and most of what you need to do visualizations in the corporate setting. Obviously it’s excellent for very specialized unusual visualizations but it’s rare those are really needed.

Apples and oranges. D3 is a low level visualisation library where you write code. Excel/Tableau are business tools.

Why can't we have both? -- I had a similar frustration and got to work on https://hal9.ai, you get prebuilt blocks to easily import/transform/visualize data, while also being able modify the D3/Plot sources to your hearts contempt.

Re: D3 7.0

#39
post #19

Used this in a data viz class and I’d say it’s overkill for most visualizations. Also very difficult to learn and frustrating to implement with all the “enter, exit” stuff. Excel, Tableau, etc so much easier and most of what you need to do visualizations in the corporate setting. Obviously it’s excellent for very specialized unusual visualizations but it’s rare those are really needed.

You're comparing Paint to Photoshop.

Re: D3 7.0

#40
post #13

The one critique I have of D3 is that it is becoming increasingly closely paired with Observable, such that when I'm searching for examples of how to make something in d3, I can only find Observable examples that require the Observable runtime in order to function properly. I think the examples should have a JS native version in addition to the Observable implementation.

Indeed - I don't like the pairing with Observable. I don't like Observable in general because the full experience can't be self-hosted. However, both projects belong to Mike, and D3.js is free - so I can't complain.

Didn't they have an export function that allowed self-hosting something you developped on Observable? (Or is it the development part that you want to self-host for "full experience"?)
Post reply on HN