C3.js多行图中的多个Y(无静态列名)

问题描述 投票:0回答:1

通常在C3.js中创建多个Y轴时,你会这样做。

var chart = c3.generate({
data: {
    columns: [
        ['data1', 30, 200, 100, 400, 150, 250],
        ['data2', 50, 20, 10, 40, 15, 25]
    ],
    axes: {
        data1: 'y',
        data2: 'y2'
    }
},
axis: {
    y2: {
        show: true
    }
}
}); 

但是我的数据是不同的动态数据,就像这样。

['week', 1, 2, 3, 4, 5, 6],
['feed cow 30', 30, 200, 100, 400, 150, 250],
['weight cow 30', 30, 200, 100, 400, 150, 250],
['week', 1, 2, 3, 4, 5, 6],
['feed cow 40', 30, 200, 100, 400, 150, 250],
['weight cow 40', 30, 200, 100, 400, 150, 250],
['week', 1, 2, 3, 4, 5, 6],
['feed cow 60', 30, 200, 100, 400, 150, 250],
['weight cow 60', 30, 200, 100, 400, 150, 250],

所以我的Column名称是动态的 我创建了一个数组用于绘制数据的X轴。所以我的数据是这样的。

 data: {       
                xs: xs,
                columns: graphdata,                
                type: "line", .......

现在我想有两个Y轴,一个是重量,一个是进料。我怎么才能实现呢?

javascript c3.js
1个回答
0
投票

明白了。

var axisData = {}; axisData[graphdata[2][0]] = "y"; axisData[graphdata[1][0]] = "y2";

....

data: {       
                xs: xs,
                columns: graphdata,                
                axes : axisData,
                type: "line",         

            },
© www.soinside.com 2019 - 2024. All rights reserved.