Hacker News new | ask | show | jobs
by jnbiche 3865 days ago
~1MB, wow! I think I'll stick with metrics-graphics (~80kB). It's really a very nice and under-recognized chart library by Mozilla. Also based on d3.
1 comments

A big yes! I discovered and adopted MetricsGraphics today, after having tried so many alternatives in the past days (Chart.js is missing some features, C3.js charts are ugly, Plottable.js is too low level, NVD3 is not stable, Epoch has not rollover, etc.).

MetricsGraphics is at the same time easy to use, quite powerful, and creates beautiful charts out the box.

It made my day.

But for "explorable" scientific charts (the kind of charts I was used to do using matplotlib), I think Plotly.js can be fantastic.

What features did you find missing from Chart.js? I'm one of the maintainers, so getting this kind of feedback is great!
Hi, and thanks for asking :-)

Charts.js is a great library. These are the problems I had that made me switch to MetricsGraphics:

- No support for time series. I need to chart 100 data points, one per day. It's difficult to correctly label the ticks on the time axis without library support, and without overlapping labels. (It looks like support for this will be added in 2.0.)

- When I rollover, instead of highlighting and showing the tooltip for the closest points, many points are highlighted. (There is an issue about this in the bug tracker.)

- I'd like to remove the dots, when drawing a chart line.

- Time scale support will be added in v2. What we've got so far uses Moment.js for parsing dates and times with dynamic scaling to different tick sizes (hour, day, week, etc). - Tooltip modes in v2 can be configured between 'single' which highlights the single closest item and 'label' which highlights all items at the same x value. - Removing dots is still something that cannot be easily done. I'll dig up the issue and target it for v2.0.
Regarding the first two issues that will be solved in v2, is too early to use v2, or is okay?

Regarding the last issue, I'd expect it to be the easiest to solve :-)

I know there are some users using it in production. The biggest challenge is that we're still in the process of writing documentation for the new features and the config object changes.

I can think of lots of workarounds to hide the points (such as setting the fill and stroke colours to 'transparent'). I think it should be fairly easy to add in something to simply prevent the drawing of the point objects.