У меня есть подсвечник с динамической загрузкой данных. Я использую addPint API для добавления новых точек. Поскольку мне нужно использовать некоторые пользовательские данные в своих всплывающих подсказках, я устанавливаю точки как Object, как показано ниже:
chart.series[0].addPoint({
x: time,
low: lowValue,
high: highValue,
open: openValue,
close: closeValue,
customParameter: myCustomPramameter
});
но я получаю эту ошибку, которая говорит: Can't add object point configuration to a long data series
удается Can't add object point configuration to a long data series
строку Can't add object point configuration to a long data series
Ошибка Highcharts # 20: http://www.highcharts.com/errors/20
Я изменил синтаксис объекта на синтаксис Array, и моя проблема была решена. Но я не могу вставлять какие-либо дополнительные данные в точки, которые нужно использовать в своих всплывающих подсказках. Есть ли способ использовать синтаксис Array для исправления этой проблемы, а также я могу встраивать в него пользовательские данные для использования в моих точках подсказки?
Вот мои текущие параметры диаграммы:
chart: {
renderTo: 'chart-container',
marginRight: 10,
zoomType: 'x'
},
title: {
text: 'My Chart'
},
xAxis: {
type: 'datetime',
dateTimeLabelFormats: {
day: '%b - %H:%M:%S',
second: '%b - %H:%M:%S'
}
},
yAxis: {
tickInterval: 0.25,
opposite: false
},
navigator: {
adaptToUpdatedData: false
},
scrollbar: {
liveRedraw: false
},
rangeSelector: {
buttons: [{
count: 1,
type: 'minute',
text: '1M'
}, {
count: 5,
type: 'minute',
text: '5M'
}, {
count: 15,
type: 'minute',
text: '15M'
}, {
count: 30,
type: 'minute',
text: '30M'
}, {
count: 60,
type: 'minute',
text: '60M'
}, {
count: 2,
type: 'hour',
text: '2H'
}, {
count: 4,
type: 'hour',
text: '4H'
}, {
count: 8,
type: 'hour',
text: '8H'
}, {
count: 1,
type: 'day',
text: '1D'
}, {
count: 2,
type: 'day',
text: '2D'
}, {
count: 3,
type: 'day',
text: '3D'
}, {
count: 4,
type: 'day',
text: '4D'
}, {
count: 5,
type: 'day',
text: '5D'
}, {
count: 6,
type: 'day',
text: '6D'
}, {
count: 7,
type: 'day',
text: '7D'
}, {
type: 'all',
text: 'All'
}],
inputEnabled: false,
selected: 0
},
tooltip: {
formatter: function (e) {
var point = this.points[0].point;
return '<div><b>#: </b><span>' + point.barNumber + '</span></div><br /><div><b>Open: </b><span>' + point.open + '</span></div><div><b> Close: </b><span>' + point.close + '</span></div><br /><div><b>High: </b><span>' + point.high + '</span></div><div><b> Low: </b><span>' + point.low + '</span></div><br /><div><b>Custom Param: </b><span>' + point.customParam + '</span></div>'
}
},
legend: {
enabled: false
},
exporting: {
enabled: false
},
series: [
{
name: 'My Chart',
type: 'candlestick',
data: []
},
{
name: 'Average',
type: 'spline',
data: [],
marker: {
lineWidth: 2,
lineColor: Highcharts.getOptions().colors[3],
fillColor: 'white'
},
color: Highcharts.getOptions().colors[3]
}]
Согласно следующему билету (последующие комментарии),
Как вставить больше данных в свечную подсказку HighChart?
Я обнаружил, что могу игнорировать это ограничение, установив turboThreshold
как 0
.
Обратите внимание, что вы должны установить его для параметров сюжета! Не параметры диаграммы.
plotOptions: {
candlestick: {
turboThreshold: 0
}