在高图表列的推送执行中更改颜色

时间:2013-11-21 18:18:17

标签: javascript json

这就是我拍摄系列数据的方式..

$.getJSON('php/common/json/chartData/jsonSpeed.php?    Mobileplaca='+Mobileplaca+'&dtInicio='+dtInicio, function(JSONresult) {

yData = avgChart.series[0].data; //Array to store data for y column
xData = avgChart.xAxis.categories; //Array to store data for x column

xDataObj = JSONresult[0];
yDataObj = JSONresult[1];

for(var key in xDataObj){
xData.push(xDataObj[key]);
}
for(var key in yDataObj){
yData.push(yDataObj[key]);
//console.dir(data);
}
new Highcharts.Chart(avgChart);
});

我想知道如何在推送执行中设置y系列的条件。例如,如果我的yDatapush超过40,它会改变红色列的颜色。 有人可以帮助我......

1 个答案:

答案 0 :(得分:0)

您可以手动设置数据点的颜色:

文档:http://api.highcharts.com/highcharts#series.data

示例:http://jsfiddle.net/tz8Ns/

data: [29.9, 71.5, 106.4, {y: 129.2, color: '#FF0000'}, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]

所以你可以做类似

的事情
yData.push({y: yDataObj[key], color: yDataObj[key] > 40 ? '#FF0000' : '#000000'})

您也可以使用阈值和负颜色找出问题: http://api.highcharts.com/highcharts#plotOptions.bar.threshold