2016-09-27 13 views
0

Я пытаюсь сделать комбинацию линейной и круговой диаграммы, но я использую 2 массива Javascript для ввода данных в отличие от жестко закодированных значений. Синтаксис, который я использую, не проходит. http://www.highcharts.com/demo/comboHighcharts - добавьте круговую диаграмму в линейную диаграмму

Код, приведенный ниже, и я добавил pieData. Как добавить это в серию, чтобы она отображалась как круговая диаграмма в углу?

В основном вместо жесткого кодирования серии, как вы определяете 2 серии для двух графиков с использованием двух массивов, подобных приведенным ниже?

Любопытное-Сорта demo

$.each(fuelObj, function (k, i) { 
    var genData = []; 
    genData.type = 'line'; 
    genData.name = i.name; 
    genData.data = i.flow.sort(); 
    genData.visible = i.visible; 
    genData.color = i.color; 
    genData.dashStyle = 'Line'; 
    genData.events = { 
     click: function (event) { 
     this.hide(); 
     } 
    }; 
    seriesData.push(genData); 

    var pie = []; 
    pie.name = i.name; 
    pie.y = i.flow[i.flow.length - 1][1]; 
    pie.color = i.color; 
    pieData.push(pie); 
    }); 
series: genData 

EDIT: Я уже использую объекты. fuelObj построен, как это выше перечисленного кода:

fuelObj['gas'] = {name: 'gasoline', yest: [], today: [], color: '#00B050', visible: true}; 
+1

Не могли бы вы опубликовать живой пример, показывающий вашу проблему? Как jsFiddle? –

ответ

2

серия обычно принимает массив объектов.

Например:

series: [ 
    { 
    type:'column' 
    name:'series 1' 
    data:[1,2,3,4,5] 
    }, 
    { 
    type:'spline' 
    name:'series 2', 
    data[5,6,7,8,9] 
    } 
] 

Убедитесь genData и pieData объекты, а затем добавить их в массив серии.

+0

это объекты, вот как я их строю в приведенном выше примере – BarryDale2014

+2

Ваш код в приведенном выше примере - «series: genData, pieData». Я не вижу тех, кого окружают скобки. – user2263572

+2

Кроме того, genData и pieData должны быть равны {}, не равным []. – user2263572

Смежные вопросы