Live data from Hacker News

Ask HN: What's the best charting library for customer-facing dashboards?

news.ycombinator.com

31–40 of 64 posts

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#31

As someone who has recently been deep diving D3 for fun, I will give you my opinion. D3 is the king of data visualization written by Mike Bostock, a creative comp sci dude with incredible data viz and programming skills (love ya Mike) The initial learning curve is kinda steep, but in reality it’s actually a really logical setup, you just need to build a few mental models. Without a doubt, I would pick D3. Top chartin…

Came to say something similar. D3 starts out feeling like “magic” (in a bad way) until you wrap your head around the join/enter/update/exit model and how the various parts fit together.

Once you grasp it, it starts feeling like magic in the very good sense of that. I think it’s worth doing 3-5 representative “here’s what I want; how do I do it in D3?” exercises before concluding that D3 is too complex.

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#32
post #3

I've messed with a few. I really like Apache Echarts if you're looking for an all-in-one-can-do-anything solution with a good license. The downsides are that the docs can sometimes be a little obtuse. There are adapters for almost every front-end at this point. Nivo is a much simpler system that is styled by default and works much easier with React. If you're not doing complicated charts, it's my goto for the "I just…

Unfortunately some of the examples[0,1] seem to lag quite a bit on Firefox with larger screens.

[0]: https://echarts.apache.org/examples/en/editor.html?c=area-st...

[1]: https://echarts.apache.org/examples/en/editor.html?c=line-aq...

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#33

https://www.chartjs.org/ It's pretty easy to configure and understand. It's the 80/20 principal of charts, it is 80% of D3 functionality for 20% the effort.

+1 I use chartjs for the web version of fatgpt.ai. It easy to setup and you can get charts going very quickly.

If I needed more dense data viz (ex a datadog-like system) I'd probably go with something D3 based

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#34

As someone who has recently been deep diving D3 for fun, I will give you my opinion. D3 is the king of data visualization written by Mike Bostock, a creative comp sci dude with incredible data viz and programming skills (love ya Mike) The initial learning curve is kinda steep, but in reality it’s actually a really logical setup, you just need to build a few mental models. Without a doubt, I would pick D3. Top chartin…

Came to say something similar. D3 starts out feeling like “magic” (in a bad way) until you wrap your head around the join/enter/update/exit model and how the various parts fit together. Once you grasp it, it starts feeling like magic in the very good sense of that. I think it’s worth doing 3-5 representative “here’s what I want; how do I do it in D3?” exercises before concluding that D3 is too complex.

Exactly. I spent like a week or two building bar charts and line charts in various ways to learn the basics, which helps. Some stuff I see, like on Mikes blog is seemingly magic

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#36

We use highcharts to power most of our charting (we're an embedded analytics platform) and switched over from from chart.js It's fairly powerful but also looks more polished out of the box. Some limitations on styling but that depends on your application/use case.

Highcharts is nice. My only complaint is that the type declarations are absolutely huge--like 300k lines. It makes my IDE grind to a halt when using TypeScript. However, the typescript compiler is unfazed by it.

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#37
post #3

I've messed with a few. I really like Apache Echarts if you're looking for an all-in-one-can-do-anything solution with a good license. The downsides are that the docs can sometimes be a little obtuse. There are adapters for almost every front-end at this point. Nivo is a much simpler system that is styled by default and works much easier with React. If you're not doing complicated charts, it's my goto for the "I just…

I've been using Echarts for quite a while now and I really like it. You can see how I am using them at https://devboard.gitsense.com/ollama

I also agree that the doc can be a little obtuse, but with examples + stackoverflow, you can figure things out.

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#38

We use highcharts to power most of our charting (we're an embedded analytics platform) and switched over from from chart.js It's fairly powerful but also looks more polished out of the box. Some limitations on styling but that depends on your application/use case.

I am also a big fan of Highcharts. It is not cheap though, especially for projects that aren't making any money yet

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#39

https://www.chartjs.org/ It's pretty easy to configure and understand. It's the 80/20 principal of charts, it is 80% of D3 functionality for 20% the effort.

Ditto here. I thought I'd try Apex Charts on my most recent project and regret it:

- mobile support works, but is poorly done - very heavy library to load - RAM intensive; a few charts w/ lots (e.g. ~100) data points spirals out of control (e.g. memory spikes from 60 MB to 700 MB). On mobile this basically guarantees that the tab crashes. - UI interactions feel laggy and lack responsiveness (e.g. panning is pure guesswork)

I thought the SVG vs canvas focus would be nice, but not at these costs.

Re: Ask HN: What's the best charting library for customer-facing dashboards?

#40
post #15

I like Vega-Lite: https://vega.github.io/vega-lite/ It’s built by folks from the same lab as D3, but designed as “a higher-level visual specification language on top of D3” [ https://vega.github.io/vega/about/vega-and-d3/ ] My favorite way to prototype a dashboard is to use Streamlit to lay things out and serve it and then use Altair [ https://altair-viz.github.io/ ] to generate the Vega-Lite plots in Python. Then if…

We like Vega lite. I always find it gets me 95% of the way there very easily. It’s the best we’ve used. You can download as svgs too.

We use it for our online graphing in its native JavaScript form.

Post reply on HN