Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用数据对象中的键设置c3.js图表数据类型?_Javascript_Json_C3.js - Fatal编程技术网

Javascript 如何使用数据对象中的键设置c3.js图表数据类型?

Javascript 如何使用数据对象中的键设置c3.js图表数据类型?,javascript,json,c3.js,Javascript,Json,C3.js,我正在尝试为对象中的每个键动态设置数据类型 该对象看起来像: {"x":["2016-01-1", "2016-01-02", etc], "uniqueKey":[4234, 4324, etc], "uniqueKey2":[432, 543, etc], ... } 键和名称的数量会因我获取的数据而异,但我需要为每个键设置图表数据类型 function show_chart1(data) { var json = JSON.parse(data); var chart

我正在尝试为对象中的每个键动态设置数据类型

该对象看起来像:

{"x":["2016-01-1", "2016-01-02", etc], "uniqueKey":[4234, 4324, etc], "uniqueKey2":[432, 543, etc], ... }
键和名称的数量会因我获取的数据而异,但我需要为每个键设置图表数据类型

function show_chart1(data) {

    var json = JSON.parse(data);

    var chart = c3.generate({
        bindto: '#chart',
        data: {
            x: 'x',
            xFormat: '%Y-%m-%d',

            json: json,

            #### need these to be the unique key names
            types: {
                uniqueKey: 'area-spline', 
                uniqueKey2: 'area-spline'
                ...
            }, 
            groups: [[uniqueKey, uniqueKey2, etc]]
        },
        axis: {
            x: {
                type: 'timeseries',
                tick: {
                    format: '%Y-%m-%d'
                }
            }
        }      
    });
};

我如何才能做到这一点?

您可以为您的类型/组构建另一个对象。如果没有一些图表变体,您可以使用
type:“area spline”
而不是为每个条目指定相同的类型

当您知道您的唯一键是什么或它们是什么样子(参考regex)时,您可以执行以下操作:

var typeDefinition = {}
for(var key in json){

    // here you can use if or switch to apply certain types
    if( key <your statement> ){
        typeDefinition[key] = 'area-spline';
    }

}
<...>
types: typeDefinition
<...>
var typeDefinition={}
for(json中的var键){
//在这里,您可以使用if或switch应用某些类型
如果(关键){
typeDefinition[键]=“面积样条线”;
}
}
类型:类型定义