4 ms·
I've never had the opportunity to do much with D3 myself, but one of the things that strikes me as really neat about D3 is that the data visualization is aesthe
by dljsjr 13y ago
I've never had the opportunity to do much with D3 myself, but one of the things that strikes me as really neat about D3 is that the data visualization is aesthetically pleasing (use of colors, transparency, stroke weight, etc.). I love to just sit and look at D3 documents because I often find them to be very soothing and enjoyable as visual elements, independent of the data being presented.
Conversely, I very rarely see any demonstrations of non-Web plotting/visualization tools (MATLAB, matplotlib, gnuplot, etc.) that look nearly as nice.
What's the reason for this? Does D3 look that nice out of the box, or are D3 users/demonstrators just more interested in flipping the appropriate bits and writing the code and doing the work to make sure that their data looks nice? I ask because I'm about to start playing with a personal project that isn't web based and that needs plotting. I'm seriously contemplating embedding a WebKit panel and using D3 to render the graphics, but I haven't had the chance to really invest a lot of time in studying plotting options. D3 has definitely given the best first impression though.
- mschulkind 13y agoD3 is not a graphics library, so it's certainly not D3 itself making anything look nice. D3 enables you to easily build great visualization, but it doesn't actually draw anything directly or provide you with a theme or anything like that. D3 pure and simple binds data to DOM elements and keeps the relationship updated, but nothing more. Those DOM elements could be pure text, or tables, or whatever else you want. It just so happens that D3 works well when bound to SVG elements, but that's purely up to you.
- kmfrk 13y agoMike Bostock has a great design sensibility, but there is also some work behind the scenes. It's a little like the LaTeX of charts that way. Notice how the ticks look, which is dynamically handled, for instance. There's some tweakage behind how many ticks to display, where to place ticks, and other Tuftian goodness.
- bdon 13y agoA few reasons: D3 has built-in components to draw small details like axes precisely, which lower the barrier to making good data graphics. Also, the feedback loop in my experience is much tighter than with tools like Processing, R or Matlab, since you can manipulate elements directly in your browser, instead of having to compile code/generate a new raster image every time.
- subbu 13y agoAs someone already said, Mike Bostock has a great design sense. But more importantly, he has built up a massive set of ready-to-use visualizations. Most others, like me, use his examples as a base to build our visualizations. We often reuse the same properties used in the examples. For example, most circles have a contour of steelblue with a stoke width of 1.5 pixels, text nodes are all sans-serif of 10 pixels, all paths (lines between nodes) are colored #ccc with a stroke width of 1.5 pixels. These are pretty good defaults.