如何从C3.js的子图中获取数据

时间:2015-09-08 07:53:55

标签: charts c3.js

我必须从使用C3.js库实现的子图中获取数据以生成表。

如何获取该数据?

1 个答案:

答案 0 :(得分:0)

您可以使用onbrush回调(http://c3js.org/reference.html#subchart-onbrush)获取所选域名(如果需要,可以使用它来过滤您的数据)

...
subchart: {
    onbrush: function (domain) { 
        // use domain (array) here
    }
    ...

小提琴 - http://jsfiddle.net/Lvn4y0vv/

例如,这是你为单个系列

做的
var chart = c3.generate({
    data: {
        columns: [
            ['sample', 30, 200, 100, 400, 150, 250]
        ]
    },
    subchart: {
        show: true,
        onbrush: function (domain) {
            var filteredData = this.data()[0].values.filter(function (e, i) {
                return (e.x >= domain[0] && e.x <= domain[1])
            }).map(function (e) {
                return e.value;
            })

            // do something with filteredData
        }
    }
});

小提琴 - http://jsfiddle.net/8dpnmvnq/