Live data from Hacker News

Cubism.js: time series visualization

square.github.com

11–20 of 33 posts

Re: Cubism.js: time series visualization

#12
We're now using this for production metrics at Square - thanks to the builtin Graphite support - and it's changed everything about how we can visualize them. This is faster, more intuitive, and more beautiful than anything that rrdtool graph or Graphite's grapher can kick out. Absolutely recommended to anybody who needs to have realtime visual feedback about system performance.

Re: Cubism.js: time series visualization

#14

Doesnt work in webkit nightly. TypeError: '[object HTMLDivElement]' is not a function (evaluating 'callback.apply(this, (arguments[0] = this, arguments))')

Lots of things might not work in nightly builds. That's why they're nightly. ;) I tried the latest Mac OS X WebKit r115090 built on 24 April 2012, and it worked fine for me. If the latest nightly doesn't work for you, please let me know by filing an issue on GitHub and giving more details about your OS and version so that I can track down the problem. Thanks!

https://github.com/square/cubism/issues

Re: Cubism.js: time series visualization

#16

Doesnt work in webkit nightly. TypeError: '[object HTMLDivElement]' is not a function (evaluating 'callback.apply(this, (arguments[0] = this, arguments))')

Lots of things might not work in nightly builds. That's why they're nightly. ;) I tried the latest Mac OS X WebKit r115090 built on 24 April 2012, and it worked fine for me. If the latest nightly doesn't work for you, please let me know by filing an issue on GitHub and giving more details about your OS and version so that I can track down the problem. Thanks! https://github.com/square/cubism/issues

Ahh, yeah. I guess because they look so much alike, I mistake WKN's functionality for Safari's (which this does seem to work fine with).

Re: Cubism.js: time series visualization

#18
post #6

never heard of horizon charts before, and found it amazing. http://vis.berkeley.edu/papers/horizon/

If by "amazing" means "I need an explanation to see what I'm seeing", then I agree with you.

Analytics visualizations are great when they're pretty, but if they aren't comprehensible, you've failed. In the vast (>1) user testing I've done with horizon graphs, it just isn't grokkable.

People in general don't want to look stupid, so they aren't going to volunteer a "hey, what the heck am I looking at here?" They'll just assume they aren't smart enough to get it and be quiet.

Re: Cubism.js: time series visualization

#19
This is interesting, I do want to ask though why you went with stacked graphs as opposed to overlaid line graphs. This makes sense when comparing disparate data points (Load vs Memory vs HTTP Requests), but are you doing this with similar data points as well?

The full screen demo is really what triggered the question for me. I've got a bunch of servers that we monitor and have found that a single graph that shows load for every server gives me a better indicator for those that are outliers. Perhaps you're just not using this for that purpose.

Would love to hear some of the use cases, are you doing all of your graphing with this?

Re: Cubism.js: time series visualization

#20
post #19

This is interesting, I do want to ask though why you went with stacked graphs as opposed to overlaid line graphs. This makes sense when comparing disparate data points (Load vs Memory vs HTTP Requests), but are you doing this with similar data points as well? The full screen demo is really what triggered the question for me. I've got a bunch of servers that we monitor and have found that a single graph that shows loa…

We use it for both, but most commonly we use it to compare a single metric (such as CPU or network utilization) across hosts.

Line graphs work well when you only have a few hosts, but start to suffer when you try to plot many hosts simultaneously. Depending on how noisy your metrics are, line graphs are good for showing the envelope, but are less effective at revealing when one or two hosts are behaving oddly; the anomalies get lost in the mess of lines. (It doesn't help that the default colors in Graphite are bad; the host that happens to be assigned bright yellow against a white background becomes much harder to see.)

Small multiples give each host a dedicated row, so you don't have to worry about occlusion or distraction. However, that requires more vertical space, which is why you need horizon graphs or a similar technique to compress them. Scrolling with a vertical rule also helps detect coincident anomalies across metrics.

Post reply on HN