Infragistics igDataChart динамическое связывание
В моем приложении есть столбчатая диаграмма igdatagrid. Требуется обновить диаграмму в соответствии с изменением данных. на графике также есть Customtooltip на столбцах, которые можно увидеть при наведении курсора. Теперь, когда данные изменяются, диаграмма отображается, если подсказка не используется, но когда я использую подсказку, она показывает ошибку. изначально при загрузке моей страницы все работает нормально, но после обновления источника данных он показывает какую-то ошибку, это мой код JavaScript
$("#chart").igDataChart({
width: "98%",
height: "350px",
dataSource: jsonObj,
title: "Sector Comparison",
windowResponse: "immediate",
axes: [{
name: "xAxis",
type: "categoryX",
label: "xValue",
labelTopMargin: 5,
gap: 5
}, {
name: "yAxis",
type: "numericY",
minimumValue: 0,
maximumValue: 109,
labelLocation: "outsideRight",
majorStrokeThickness: 2,
majorStroke: "#0856a7",
minorStroke: 'black',
minorInterval: 10,
interval: 50,
formatLabel: function (value) {
if (value == 50) {
return "Medium value";
}
},
}, {
name: "yAxis1",
type: "numericY",
title: "Rank",
minimumValue: 0,
maximumValue: 109,
labelLocation: "outsideLeft",
interval: 10,
formatLabel: function (value) {
return value;
},
}],
series: [{
name: "series1",
type: "column",
isHighlightingEnabled: true,
isTransitionInEnabled: true,
xAxis: "xAxis",
yAxis: "yAxis",
valueMemberPath: "value",
showTooltip: true,
remove: true,
isCustomCategoryStyleAllowed: true,
}],
assigningCategoryStyle: function (e, ui) {
var startIndex = ui.startIndex;
var endIndex = ui.endIndex;
var items =ui.getItems(startIndex,endIndex);
var color = ui.fill;
for (var i = 0; i < items.length; i++) {
if (items[i].color) {
color = items[i].color;
}
}
ui.fill = color;
}
это код, который я пишу при привязке подсказки изначально
//get
var series = $("#chart").igDataChart("option", "series");
series[0].tooltipTemplate;
//Set
$("#chart").igDataChart("option", "series",
[{
name: "series1",
type: "column",
isHighlightingEnabled: true,
isTransitionInEnabled: true,
xAxis: "xAxis",
yAxis: "yAxis",
valueMemberPath: "value",
showTooltip: true,
isCustomCategoryStyleAllowed: true,
tooltipTemplate: "CustomTooltipTemplate",
}]
);
"CustomTooltipTemplate" - это мой пользовательский шаблон всплывающей подсказки, который изначально отлично работает
когда я получаю новые данные, после чего я пытаюсь обновить график с помощью всплывающей подсказки [0].tooltipTemplate; показать ошибку в консоли, так как не могу прочитать свойство 'tooltipTemplate' из неопределенного, и если я не использую пользовательский шаблон и просто использую свойство showTooltip Не удается прочитать свойство 'updateToolTip' из неопределенного, есть ли способ, которым я могу использовать настраиваемый tootltip и dataSource динамически,
Раньше я обновлял источник данных i,e jsonObj . я нашел решение. при обновлении диаграммы я перезаписываю серию и назначаю источник данных диаграмме и сериям визуализации, как показано ниже, и это работает
$("#chart").igDataChart({
series: [{
name: "series1",
type: "column",
isHighlightingEnabled: true,
isTransitionInEnabled: true,
xAxis: "xAxis",
yAxis: "yAxis",
valueMemberPath: "value",
isCustomCategoryStyleAllowed: true,
}],
});
$("#chart").igDataChart("option", "dataSource", jsonObj);
$("#chart").igDataChart("renderSeries", "xAxis", false);
$("#chart").igDataChart("renderSeries", "yAxis", false);
$("#chart").igDataChart("renderSeries", "yAxis1", false);