Я пытаюсь построить линейный график, используя highchart.js, который использует зеленый и черный цвета. Данные извлекаются из базы данных SQL, и если значение выше предыдущего значения, оно становится зеленым. Если значение меньше предыдущего значения, то цвет черный.
Я новичок в этом и искал и искал, но единственное, что я нашел, это использование зон для изменения цветов.
Может ли кто-нибудь помочь мне в этом?






Я создал этот пример, он должен вам помочь:
series: [{
name: 'Random data',
colorByPoint: true,
data: (function() {
// generate an array of random data
var time = (new Date()).getTime(),
i,
yValue;
for (i = -19; i <= 0; i += 1) {
yValue = Math.random();
if (i > -19 && yValue > data[data.length - 1].y) { // Green point
zones.push({
color: "#5f9",
value: time + i * 1000,
});
} else if (i > -19 && yValue <= data[data.length - 1].y) { // black point
zones.push({
color: "#000",
value: time + i * 1000,
});
} else { // first point alway green
zones.push({
color: "#5f9",
value: time + i * 1000,
});
}
data.push({
x: time + i * 1000,
y: yValue
});
}
return data;
}()),
zoneAxis: "x",
zones: zones
}]
Большое спасибо. Это определенно то, что я искал. Не могли бы вы также объяснить мне, что это делает и как это происходит? Также, если я изменил цвета, последняя точка всегда остается зеленой, и я не уверен, как это изменить. Спасибо!
Привет и добро пожаловать на SO. Прочтите этот гид и отредактируйте свой вопрос.